公司一个上古老项目,最近需要新增功能,为了开发Webservice,我把老系统的Weblogic升级到了10,jdk1.6.
不过,系统一些旧的业务,会涉及到数据同步到另一个系统中,那个系统的weblogic是8,jdk1.4. 以往没出现过问题。
但在新环境下,我测试旧的业务,发现数据同步无法进行,定位到在InitialContext(property)的过程中,根据另一个系统的ip进行初始化时候会失败。对方系统报错信息如下:
<2018-7-5 上午03时27分00秒 GMT> <Error> <RJVM> <BEA-000503> <Incoming message header or abbreviation processing failed>
weblogic.rjvm.BubblingAbbrever$BadAbbreviationException: Bad abbreviation value: '256' - with nested exception:[java.lang.NullPointerException]
java.lang.NullPointerException
at weblogic.rjvm.BubblingAbbrever.getValue(BubblingAbbrever.java:152)
at weblogic.rjvm.InboundMsgAbbrev.read(InboundMsgAbbrev.java:46)
at weblogic.rjvm.MsgAbbrevJVMConnection.readMsgAbbrevs(MsgAbbrevJVMConnection.java:212)
at weblogic.rjvm.MsgAbbrevInputStream.readMessageContext(MsgAbbrevInputStream.java:237)
at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:744)
at weblogic.rjvm.http.HTTPServerJVMConnection.dispatch(HTTPServerJVMConnection.java:399)
at weblogic.rjvm.http.TunnelSendServlet.service(TunnelSendServlet.java:25)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1072)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:465)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:348)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6981)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3892)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2766)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.Kernel.execute(Kernel.java:343)
at weblogic.servlet.internal.WebAppServletContext.dispatch(WebAppServletContext.java:3656)
at weblogic.servlet.internal.MuxableSocketHTTP.dispatch(MuxableSocketHTTP.java:784)
at weblogic.socket.MuxableSocketDiscriminator.dispatch(MuxableSocketDiscriminator.java:285)
at weblogic.socket.NTSocketMuxer.processSockets(NTSocketMuxer.java:105)
at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
公司系统报错:
com.qel.arch.service.ServiceLocatorException
at com.qel.arch.service.ServiceLocator.getInstance(ServiceLocator.java:47)
at com.qel.qqjg.twolevel.gen.OperDelegate.initializeHome(OperDelegate.java:29)
at com.qel.qqjg.twolevel.gen.OperDelegate.<init>(OperDelegate.java:17)
at com.qel.qqjg.twolevel.oper.DelegateFactory.createOperDelegate(DelegateFactory.java:34)
at com.qel.qqjg.twolevel.util.OperUtils.update(OperUtils.java:88)
at com.qel.qqjg.twolevel.oper.OperRCSESubmit.updateTwoLevel(OperRCSESubmit.java:162)
at com.qel.qqjg.twolevel.oper.OperRCSESubmit.execute(OperRCSESubmit.java:135)
at jsp_servlet._information._imp.__submit._jspService(__submit.java:251)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:34)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3717)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
网上找到的类似问题都说是weblogic版本问题导致的,已经尝试将本地的weblogic.jar包替换为对方系统的方案,但还是无法解决,请大家帮帮忙。