我remotly調用EJB方法使用下面的代碼:哪裏是EJB方法運行
RemCallRemote rc = null;
String Text = "";
Properties props = new Properties();
//Filling the properties for connection to a remote server
props.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");
props.put(Context.PROVIDER_URL, "hostaddress:50004");
props.put(Context.SECURITY_PRINCIPAL, "LOGINNAME");
props.put(Context.SECURITY_CREDENTIALS, "*****");
props.put(Context.URL_PKG_PREFIXES, "com.sap.engine.services");
InitialContext ctx = new InitialContext(props);
//getting a reference to an interface
rc = (RemCallRemote)ctx.lookup("ejb:/appName=sap.com/RemoteCallEAR, jarName=RemoteCallEJB.jar, beanName=RemCall, interfaceName=RemCallRemote");
//calling an EJB method
Text = rc.Check();
的代碼工作正常,但我的問題是:在哪裏EJB方法運行?它是否始終在'hostaddress'機器上或其他地方運行?
您的回答非常豐富。謝謝。你是對的。 SAP服務器是多個Java應用程序服務器的集羣。即使我使用特定的物理服務器名稱(可以這樣做)來調用EJB,也不保證EJB將在特定的物理服務器上運行。這由SAP Java管理服務決定。 – Skalozub