Java 无法初始化类weblogic.utils.LocatorUtilities$Locator

Java 无法初始化类weblogic.utils.LocatorUtilities$Locator,java,liferay,weblogic,jndi,Java,Liferay,Weblogic,Jndi,我正在尝试从Liferay远程调用部署在weblogicserver12.2.1.3.0中的EJB 我正在使用wlthint3client.jar,javajdk1.8.0172和liferaydxp, 但它引发了下一个例外: 18:11:31,101 ERROR [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'][DispatcherPortlet:573] Could not com

我正在尝试从
Liferay
远程调用部署在
weblogicserver12.2.1.3.0
中的
EJB

我正在使用
wlthint3client.jar
javajdk1.8.0172
liferaydxp
, 但它引发了下一个例外:

18:11:31,101 ERROR [[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'][DispatcherPortlet:573] Could not complete request
javax.portlet.PortletException: Error occured during request processing: Could not initialize class weblogic.utils.LocatorUtilities$Locator
    at org.springframework.web.portlet.DispatcherPortlet.doActionService(DispatcherPortlet.java:692)
    at org.springframework.web.portlet.FrameworkPortlet.processRequest(FrameworkPortlet.java:533)
    at org.springframework.web.portlet.FrameworkPortlet.processAction(FrameworkPortlet.java:473)
    at com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:71)
    at com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:48)
    at com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:108)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
    at com.liferay.portal.osgi.web.wab.extender.internal.adapter.ServletExceptionAdapter.service(ServletExceptionAdapter.java:76)
    at org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153)
    at org.eclipse.equinox.http.servlet.internal.servlet.FilterChainImpl.doFilter(FilterChainImpl.java:50)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:119)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:191)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:191)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:99)

Caused by: java.lang.NoClassDefFoundError: Could not initialize class weblogic.utils.LocatorUtilities$Locator
    at weblogic.utils.LocatorUtilities.getService(LocatorUtilities.java:37)
    at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:124)
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684)
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313)
    at javax.naming.InitialContext.init(InitialContext.java:244)
    at javax.naming.InitialContext.<init>(InitialContext.java:216)
    at mx.com.procesar.esar.portal.imprimecurp.controller.impl.ImprimeCurpControllerImpl.executeImprimeCurpResponse(ImprimeCurpControllerImpl.java:169)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
18:11:31101错误[[ACTIVE]ExecuteThread:'2'队列:'weblogic.kernel.Default(自调优)'][DispatcherPortlet:573]无法完成请求
javax.portlet.PortletException:请求处理期间发生错误:无法初始化类weblogic.utils.LocatorUtilities$Locator
位于org.springframework.web.portlet.DispatcherPortlet.doActionService(DispatcherPortlet.java:692)
位于org.springframework.web.portlet.FrameworkPortlet.processRequest(FrameworkPortlet.java:533)
位于org.springframework.web.portlet.FrameworkPortlet.processAction(FrameworkPortlet.java:473)
位于com.liferay.portlet.FilterChainImpl.doFilter(FilterChainImpl.java:71)
位于com.liferay.portal.kernel.portlet.PortletFilterUtil.doFilter(PortletFilterUtil.java:48)
位于com.liferay.portal.kernel.servlet.PortletServlet.service(PortletServlet.java:108)
位于javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
位于com.liferay.portal.osgi.web.wab.extender.internal.adapter.ServletExceptionAdapter.service(ServletExceptionAdapter.java:76)
位于org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153)
位于org.eclipse.equinox.http.servlet.internal.servlet.FilterChainImpl.doFilter(FilterChainImpl.java:50)
位于com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:119)
位于com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:191)
位于com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
位于com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.processDirectCallFilter(InvokerFilterChain.java:191)
位于com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:96)
位于com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:99)
原因:java.lang.NoClassDefFoundError:无法初始化类weblogic.utils.LocatorUtilities$Locator
位于weblogic.utils.LocatorUtilities.getService(LocatorUtilities.java:37)
在weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:124)上
位于javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684)
位于javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313)
位于javax.naming.InitialContext.init(InitialContext.java:244)
位于javax.naming.InitialContext。(InitialContext.java:216)
在mx.com.procesar.esar.portal.imprimecurp.controller.impl.ImprimeCurpControllerImpl.executeimercurpresponse(ImprimeCurpControllerImpl.java:169)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
我想我需要一些依赖关系,但我可以弄清楚它们是什么,你知道这里发生了什么吗


非常感谢您阅读

我收到了相同的问题,它是由我的类路径中添加的hk2-locator-2.2.0.jar引起的。 您可以通过确保在hk2定位器之前加载wlthint3client依赖项来解决此问题

顺便说一下,我不太明白为什么您将wlthint3client.jar添加到WAR文件中,因为它部署在WLS上。 Thinclient设计为在Weblogic容器之外运行,就像Oracle文档描述的那样:

精简T3客户端可用于独立应用程序,也可用于运行在外部(非WebLogic)服务器上的应用程序。一个常见的用例是与WebLogic JMS目的地的集成。


我也遇到了同样的问题,它是由在我的类路径中添加的hk2-locator-2.2.0.jar引起的。 您可以通过确保在hk2定位器之前加载wlthint3client依赖项来解决此问题

顺便说一下,我不太明白为什么您将wlthint3client.jar添加到WAR文件中,因为它部署在WLS上。 Thinclient设计为在Weblogic容器之外运行,就像Oracle文档描述的那样:

精简T3客户端可用于独立应用程序,也可用于运行在外部(非WebLogic)服务器上的应用程序。一个常见的用例是与WebLogic JMS目的地的集成。


我想我需要一些依赖关系-您能否发布您拥有的依赖关系,例如,如何构建项目,如何部署(OSGi捆绑包或WAR风格的portlet)?DXP7.0?7.1?你好,Olaf,谢谢你的帮助,我正在使用DXP7.0,它是一个WAR风格的portlet(SpringMVCPortlet),我的门户部署在WebLogicServer12.2.1.3.0上,EJB部署在另一台服务器上(WBLogic10),我用于创建上下文的依赖项是wlthint3client.jar,weblogic.jar和wljmsclient.jar我想我需要一些依赖关系-你能发布你的依赖关系吗,例如,你如何构建你的项目,如何部署(OSGi捆绑包或WAR风格的portlet)?DXP7.0?7.1?你好,奥拉夫,谢谢你的帮助,我正在使用DXP7.0,它是一个战争风格的portlet(SpringMVCPortlet),我的门户部署在WebLogicServer12.2.1.3.0上,EJB部署在另一台服务器上(WBLogic10),我用于创建上下文的依赖项是wlthint3client.jar、Weblogic.jar和wljmsclient.jar