简体   繁体   English

Azure中Glassfish 3.1.2.2上的远程EJB

[英]Remote EJB on Glassfish 3.1.2.2 in Azure

I have two very simple EAR files. 我有两个非常简单的EAR文件。 One ear exposes a remote stateless ejb (called server.ear) and the other ear is a web module plus a local ejb that lookups the remote ejb bean (client.ear). 一只耳朵公开一个远程无状态ejb(称为server.ear),另一只耳朵则是一个Web模块和一个本地ejb,用于查找远程ejb bean(client.ear)。 Via @PostContstruct. 通过@PostContstruct。

They both are deployed to different instances on Glassfish 3.1.2.2 running Java 7 in all environments. 它们都被部署到在所有环境中运行Java 7的Glassfish 3.1.2.2上的不同实例。

It works perfectly fine in my container environment on my local machine. 在我的本地计算机上的容器环境中,它运行良好。 I have two different instances (JVMs) and I'm able to successfully call the remote ejb method from client.ear. 我有两个不同的实例(JVM),并且能够从client.ear成功调用远程ejb方法。 No problems everything works great. 没问题,一切都很好。

However, when I deploy this to our Azure environment I'm getting this exception: 但是,当我将其部署到我们的Azure环境时,会遇到以下异常:

Caused by: javax.naming.NamingException: Lookup failed for 'com.wk.Hello' in SerialContext[myEnv={org.omg.CORBA.ORBInitialPort=3700, java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, org.omg.CORBA.ORBInitialHost=zuse1dldsap01.wkrainier.com, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is javax.naming.NamingException: Unable to acquire SerialContextProvider for SerialContext[myEnv={org.omg.CORBA.ORBInitialPort=3700, java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, org.omg.CORBA.ORBInitialHost=zuse1dldsap01.wkrainier.com, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming} [Root exception is org.omg.CORBA.NO_PERMISSION: ----------BEGIN server-side stack trace---------- org.omg.CORBA.NO_PERMISSION: vmcid: 0x0 minor co 引起原因:javax.naming.NamingException:在SerialContext中查找“ com.wk.Hello”失败[myEnv = {org.omg.CORBA.ORBInitialPort = 3700,java.naming.factory.initial = com.sun.enterprise.naming .impl.SerialInitContextFactory,org.omg.CORBA.ORBInitialHost = zuse1dldsap01.wkrainier.com,java.naming.factory.state = com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl,java.naming.factory.url .pkgs = com.sun.enterprise.naming} [根本异常是javax.naming.NamingException:无法获取SerialContext的SerialContextProvider [myEnv = {org.omg.CORBA.ORBInitialPort = 3700,java.naming.factory.initial = com .sun.enterprise.naming.impl.SerialInitContextFactory,org.omg.CORBA.ORBInitialHost = zuse1dldsap01.wkrainier.com,java.naming.factory.state = com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl,java .naming.factory.url.pkgs = com.sun.enterprise.naming} [根本例外是org.omg.CORBA.NO_PERMISSION:---------- BEGIN服务器端堆栈跟踪----- ----- org.omg.CORBA.NO_PERMISSION:vmcid:0x0次要合作伙伴 de: 0 completed: No at com.sun.enterprise.iiop.security.SecServerRequestInterceptor.handle_null_service_context(SecServerRequestInterceptor.java:421) at com.sun.enterprise.iiop.security.SecServerRequestInterceptor.receive_request(SecServerRequestInterceptor.java:443) at com.sun.corba.ee.impl.interceptors.InterceptorInvoker.invokeServerInterceptorIntermediatePoint(InterceptorInvoker.java:612) at com.sun.corba.ee.impl.interceptors.PIHandlerImpl.invokeServerPIIntermediatePoint(PIHandlerImpl.java:612) at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.getServantWithPI(CorbaServerRequestDispatcherImpl.java:333) at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:196) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1624) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1486) at com.sun.corba.ee.impl.p de:0已完成:com.sun.enterprise.iiop.security.SecServerRequestInterceptor.receive_request(SecServerRequestInterceptor.java:443)处的com.sun.enterprise.iiop.security.SecServerRequestInterceptor.handle_null_service_context(SecServerRequestInterceptor.java:421)处否com.sun.corba.ee.impl.interceptors.PIHandlerImpl.invokeServerPIIntermediatePoint(PIHandlerImpl.java:612)上的.sun.corba.ee.impl.interceptors.InterceptorInvoker.invokeServerInterceptorIntermediatePoint(InterceptorInvoker.java:612) com.sun.corba.ee上的.ee.impl.protocol.CorbaServerRequestDispatcherImpl.getServantWithPI(CorbaServerRequestDispatcherImpl.java:333)位于com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:196)。 com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1486)上的.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1624),com.sun.corba.ee.impl.p rotocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:990) at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:214) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:742) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:539) at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2324) at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.performWork(ThreadPoolImpl.java:497) at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:540) com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:214)上的com.sun.corba.ee.impl.protocol上的rotocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:990)。位于com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:539)的CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:742),位于com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork( com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl $ WorkerThread.performWork(ThreadPoolImpl.java:497)的com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl $的CorbaMessageMediatorImpl.java:2324) WorkerThread.run(ThreadPoolImpl.java:540)

----------END server-side stack trace---------- vmcid: 0x0 minor code: 0 completed: No]] ---------- END服务器端堆栈跟踪---------- vmcid:0x0次要代码:0已完成:否]]

I tried to research this issue without any real help. 我试图在没有任何实际帮助的情况下研究此问题。 I was wondering if someone came across this issue and what kind of black magic do I need to get this working? 我想知道是否有人遇到过这个问题,我需要哪种黑魔法才能使它正常工作? Any help or suggestion would be greatly appreciated. 任何帮助或建议,将不胜感激。

I'm hitting this issue: https://github.com/javaee/glassfish-corba/issues/13 我遇到了这个问题: https : //github.com/javaee/glassfish-corba/issues/13

After removing the SSL stuff under the orb-1 from the domain xml and restarting the instances everything works. 从域xml中删除orb-1下的SSL内容并重新启动实例后,一切正常。 Now I just have to remember never to open the ORB Listener tab in GUI every again! 现在,我只记得永远不要再次在GUI中打开ORB侦听器选项卡!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM