我有一個JBoss 7服務器上運行&接受端口443上遠程連接失敗,代理例外
一直以來我是測試在當地這是工作的罰款安全連接。但現在當我做連接嘗試我得到一個
「javax.naming.NamingException: Failed to create proxy [Root exception is java.lang.IllegalStateException: ...
」。
我試圖按照寫的是什麼@EJB invocations from a remote client using JNDI
我想我jndi.properties & jboss-ejb-client.properties文件需要修改。我認爲我說得對,但仍然沒有成功。
1)的jndi.properties
java.naming.factory.url.pkgs=org.jboss.ejb.client.naming
2)jboss-ejb-client.properties
remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
remote.connections=default
remote.connection.default.host=10.160.148.61
remote.connection.default.port = 4447
remote.connection.default.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
任何建議任何人。使端口443也沒有幫助。從客戶端
InitialContext aJNDI = new InitialContext();
Ppi handle = (Ppi) aJNDI
.lookup("ejb:PPIEAR/PService/PConnect!com.gem.p.PConnection?stateful");
發佈全stracktrace
我的EJB調用:
log4j: Finished configuring.
- JBoss EJB Client version 1.0.5.Final
- XNIO Version 3.0.3.GA
- XNIO NIO Implementation Version 3.0.3.GA
- JBoss Remoting version 3.2.3.GA
- Could not register a EJB receiver for connection to remote://10.160.148.61:4447
java.lang.RuntimeException: Operation failed with status WAITING
at org.jboss.ejb.client.remoting.IoFutureHelper.get(IoFutureHelper.java:93)
at org.jboss.ejb.client.remoting.ConfigBasedEJBClientContextSelector.setupEJBReceivers(ConfigBasedEJBClientContextSelector.java:121)
at org.jboss.ejb.client.remoting.ConfigBasedEJBClientContextSelector.<init>(ConfigBasedEJBClientContextSelector.java:78)
at org.jboss.ejb.client.EJBClientContext.<clinit>(EJBClientContext.java:77)
at org.jboss.ejb.client.EJBClient.createSession(EJBClient.java:160)
at org.jboss.ejb.client.naming.ejb.EjbNamingContext.doCreateProxy(EjbNamingContext.java:135)
at org.jboss.ejb.client.naming.ejb.EjbNamingContext.createEjbProxy(EjbNamingContext.java:113)
at org.jboss.ejb.client.naming.ejb.EjbNamingContext.lookup(EjbNamingContext.java:96)
at javax.naming.InitialContext.lookup(Unknown Source)
..
另外,你有沒有驗證過'ejb:PPIEAR/PService/PConnect !com.gem.p.PConnection?stateful'實際上存在於您的目標JNDI命名空間中? – eis
@eis如何檢查名稱空間是否正確。那麼如果我使用本地服務器的意思是我更改''remote.connection.default.host = localhost''並在本地運行應用程序,那麼應用程序將正常運行。我在遠程服務器上部署了相同的耳朵。所以我猜這個調用是正確的.. – rockstar
好吧,那麼你可能有一個錯誤的IP +端口組合,服務器不聽或防火牆阻止連接。我將其添加爲答案。 – eis