WebLogic下Argument(s) "type" can't be null.
Posted weixupeng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WebLogic下Argument(s) "type" can't be null.相关的知识,希望对你有一定的参考价值。
启动项目出现Argument(s) "type" can‘t be null.异常。异常如下:
java.lang.IllegalArgumentException: Argument(s) "type" can‘t be null. at com.sun.xml.bind.api.TypeReference.<init>(TypeReference.java:93) at com.sun.xml.ws.model.RuntimeModeler.processDocWrappedMethod(RuntimeModeler.java:758) at com.sun.xml.ws.model.RuntimeModeler.processMethod(RuntimeModeler.java:678) at com.sun.xml.ws.model.RuntimeModeler.processClass(RuntimeModeler.java:428) at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:277) Truncated. see log file for complete stacktrace > <11.02.2014 22:28 Uhr FET> <Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID ‘1392146884362‘ for task ‘17‘. Error is: ‘weblogic.application.ModuleException: [HTTP:101216]Servlet: "ItvasDAS" failed to preload on startup in Web application: "itvas-das-0.0.1.war". java.lang.IllegalArgumentException: Argument(s) "type" can‘t be null. at com.sun.xml.bind.api.TypeReference.<init>(TypeReference.java:93) at com.sun.xml.ws.model.RuntimeModeler.processDocWrappedMethod(RuntimeModeler.java:758) at com.sun.xml.ws.model.RuntimeModeler.processMethod(RuntimeModeler.java:678) at com.sun.xml.ws.model.RuntimeModeler.processClass(RuntimeModeler.java:428) at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:277) at com.sun.xml.ws.server.EndpointFactory.createSEIModel(EndpointFactory.java:363) at com.sun.xml.ws.server.EndpointFactory.createEndpoint(EndpointFactory.java:202) at com.sun.xml.ws.api.server.WSEndpoint.create(WSEndpoint.java:496) at com.sun.xml.ws.api.server.WSEndpoint.create(WSEndpoint.java:539) at weblogic.wsee.jaxws.JAXWSDeployedServlet.getEndpoint(JAXWSDeployedServlet.java:183) at weblogic.wsee.jaxws.JAXWSServlet.registerEndpoint(JAXWSServlet.java:139) at weblogic.wsee.jaxws.JAXWSServlet.init(JAXWSServlet.java:68) at weblogic.wsee.jaxws.JAXWSDeployedServlet.init(JAXWSDeployedServlet.java:54) at javax.servlet.GenericServlet.init(GenericServlet.java:241) at weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283) ... at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68) at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256) at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
搜了好久,最后在一篇来外的文章上(http://www.intropro.com/resources/blog/66-argument-s-type-can-t-be-null)
找到解决方法:删除WEB-INF/lib下jaxb-api-2.2.3-2.5.2.jar、jaxb-impl-2.2.4-1-2.5.2.jar、jaxb-xjc-2.2.4-1-2.5.2.jar 三个jar包。问题解决。
最后整个项目终于成功启动运行。
总结:Tomcat下项目运行正常,发布到WebLogic下出现异常,多半是jar包不兼容问题。找到报错的类,查找jar,删除冲突即可。
以上是关于WebLogic下Argument(s) "type" can't be null.的主要内容,如果未能解决你的问题,请参考以下文章
python struct.pack方法报错argument for 's' must be a bytes object 解决
No operator matches the given name and argument type(s). You might need to add explicit type casts报错