Tôi đang chạy RServe từ máy Server sử dụng cmdConnect để RServe từ JAVA sử dụng xác thực
Rserve.exe --RS-conf Rserv.conf --RS-port 12306
tập tin Rserv.conf đã sau nội dung:
pwdfile RserveAuth.txt
auth cần
bật từ xa
văn bản thuần túy vô hiệu hóaRserveAuth.txt đã nội dung sau:
quản 123456
Tôi đang kết nối với R Server từ JAVA
import org.rosuda.REngine.REXPMismatchException; import org.rosuda.REngine.REngineException; import org.rosuda.REngine.Rserve.RConnection; import org.rosuda.REngine.Rserve.RserveException; import org.rosuda.REngine.REXP; import org.rosuda.REngine.*; public class ConnecttoR { ... ... public void connectR() { try { RConnection connection = new RConnection("172.16.33.242",12306); // Works if authentication is not required in Rserv.conf } catch (RserveException e) { e.printStackTrace(); } catch(REXPMismatchException e){ e.printStackTrace(); } catch(REngineException e){ e.printStackTrace(); } } }
Kết nối với Rserve là mở cửa cho tất cả mà không tên & Password. Làm thế nào tôi sẽ thêm an ninh và cho phép kết nối duy nhất với các thông tin có giá trị để truy cập Rserve
Trả lời
Như bạn đã kích hoạt xác thực sau khi tạo các kết nối như một lệnh đầu tiên bạn cần thực hiện lệnh login
. Thư viện Java có một trình bao bọc đặc biệt cho nó.
Xem mã bên dưới để biết ví dụ về trường hợp sử dụng.
RConnection connection = new RConnection("127.0.0.1",12306);
connection.login("Admin", "123456");
REXP x = connection.eval("R.version.string");
System.out.println(x.asString());
Ngoài ra, tôi khuyên bạn nên sử dụng đường dẫn đầy đủ làm giá trị pwdfile
.
Liệu nó có sử dụng ssh nội bộ để kết nối không? Nó là một giải pháp mà sẽ làm việc cho cả Windows và Linux hộp? – madhavi
Có nó sẽ làm việc cho bất kỳ hệ thống (tôi đã thử nghiệm nó với MacOS X), và không có nó sử dụng kết nối ổ cắm bản địa. – Babl
bcz i theo giải pháp của bạn và nhận được org.rosuda.REngine.Rserve.RserveException: đăng nhập thất bại, yêu cầu trạng thái: ủy quyền không thành công \t tại org.rosuda.REngine.Rserve.RConnection.login (RConnection.java:399) lỗi – madhavi
- 1. Lỗi thực thi thư viện trong Rserve từ Java
- 2. Cách chính xác để sử dụng CSSTransitionGroup và Redux Connect
- 3. kết nối Rserve không
- 4. Connect và xác thực để SharePoint với WCF
- 5. Sử dụng xác thực NTLM trong các ứng dụng Java
- 6. Xác thực của Google: OAuth2.0 Vs OpenID Connect
- 7. xác thực BASIC từ JAVA để SharePoint 2013 REST API
- 8. Tôi nên sử dụng thư viện xác thực java nào?
- 9. Gọi ggplot từ Rserve. Hình ảnh png trống của 1KB
- 10. Connect Hive thorugh Java JDBC
- 11. Connect để ThinkOrSwim sử dụng NDDE trong Net
- 12. Xác thực API LinkedIn bằng cách sử dụng Java
- 13. Connect Github sử dụng OAuth trong javascript
- 14. Xác thực lược đồ JSON bằng cách sử dụng java
- 15. Thực hành tốt có sử dụng cụm từ thông dụng để xác thực đầu vào không?
- 16. Xác thực proxy Java
- 17. Java Xác thực Library
- 18. Tôi nên sử dụng thư viện Java nào để xác thực thông qua Facebook, Gmail, xác thực cục bộ, v.v.?
- 19. Xác định các từ bằng cách sử dụng Java
- 20. Xác thực với sharepoint với kerberos từ một java HttpClient
- 21. Sử dụng Ngoại lệ để xác thực các đầu vào
- 22. Cụm từ thông dụng để xác thực tên người dùng?
- 23. Tải xuống tệp từ internet bằng java: Cách xác thực?
- 24. nhiều cơ chế xác thực trong một ứng dụng sử dụng cấu hình java
- 25. Lẫn lộn trên session IDs sử dụng Connect
- 26. Java URLConnection - Khi nào tôi cần sử dụng phương thức connect()?
- 27. Connect ray ứng dụng SQL Server 2005 từ Windows
- 28. Cách sử dụng RestSharp để Xác thực Google?
- 29. Sử dụng Xerces-j để xác thực Tài liệu XML
- 30. Sử dụng Java ProcessBuilder để thực hiện lệnh đường ống
có vẻ như RServer của bạn nằm trên Windows 'Rserve.exe', người dùng máy khách đang chạy [Windows, MacOSX, Linux] là gì? RServer sản xuất của bạn có trên Windows không? Chỉ cần kiểm tra các yêu cầu. – Technophobe01
@ Technophobe01 RServer có trên máy tính Windows và khách hàng của tôi có thể là bất kỳ Windows/Linux/MacOSX nào kết nối với nó. Yêu cầu kết nối tới Rserver được thực hiện từ lớp JAVA và sau đó tôi chạy tập lệnh trên Rserve sử dụng đối tượng kết nối và chuyển đầu ra của tập lệnh tới trang JSP. – Akki
FYI. Phiên bản RServe trong Windows bị giới hạn. Giới hạn quan trọng nhất là "không có kết nối song song nào được hỗ trợ, các kết nối tiếp theo chia sẻ cùng một không gian tên"/"phiên không được hỗ trợ - đây là kết quả của thực tế là các kết nối song song không được hỗ trợ". Xem https://www.rforge.net/Rserve/rserve-win.html dưới "Vui lòng đọc trước khi tải xuống/sử dụng phiên bản Windows của Rserve!" –