Protocol buffers ProtoBuf jar在web应用程序中使用时导致异常

Protocol buffers ProtoBuf jar在web应用程序中使用时导致异常,protocol-buffers,jbpm,websphere-6.1,Protocol Buffers,Jbpm,Websphere 6.1,我正试图在使用IBMWebSphere6.1的web应用程序中使用JBPMV5.4。JBPM附带了protobuf-java-2.4.1.jar,所以我在我的web应用程序中添加了这个jar。但当我启动服务器时,由于这个jar,我得到了以下异常。当我移除这个jar时,一切都正常工作(除了使用portbuf功能时,java.lang.NoClassDefFoundError,这是意料之中的) 实际发生了什么,我应该如何解决它? 更新 我在WEB-INF/lib文件夹中创建了一个只有protobuf

我正试图在使用IBMWebSphere6.1的web应用程序中使用JBPMV5.4。JBPM附带了
protobuf-java-2.4.1.jar
,所以我在我的web应用程序中添加了这个jar。但当我启动服务器时,由于这个jar,我得到了以下异常。当我移除这个jar时,一切都正常工作(除了使用portbuf功能时,
java.lang.NoClassDefFoundError
,这是意料之中的)

实际发生了什么,我应该如何解决它?

更新 我在
WEB-INF/lib
文件夹中创建了一个只有
protobuf-java-2.4.1.jar
的空webapp。服务器在启动时引发相同的异常。但是当我在Tomcat6.33中部署应用程序时,它毫无例外地启动了

更新 当我在测试服务器上部署应用程序时,它工作了。 以下是我的测试和开发机器特定于环境的信息

测试

发展


这看起来像是一个产品错误,因此我建议在IBM中打开一个PMR


作为一种解决方法,您可以尝试将有问题的JAR移动到共享库中,然后将共享库与WAR模块相关联。从类加载的角度来看,这与在WAR中包含JAR具有相同的效果,但它应该防止注释扫描程序查看JAR。

当我将共享库与WAR关联时,屏幕上会显示以下消息:,
尝试调用操作setApplicationInfo com.ibm.websphere.management.Exception.AdminException:ADMA017EE时在RequiredModelMBean中引发异常这似乎是一个产品问题。我已经用我最新的观察更新了我的问题…看起来测试/工作服务器上的补丁包比开发服务器上的补丁包要新得多,这很好地证明了这是一个产品问题。我建议升级您的开发服务器。我不知道AdminException错误是什么意思;这似乎是一个不相关的问题,您需要单独调查。
com.ibm.ws.metadata.annotations.AnnotationException: Annotation processing failed for class:  com/google/protobuf/FieldSet.class
    at com.ibm.ws.metadata.annotations.AnnotationConfigReader.getAnnotationData(AnnotationConfigReader.java:462)
    at com.ibm.ws.metadata.annotations.AnnotationConfigReader.populateModuleData(AnnotationConfigReader.java:247)
    at com.ibm.ws.metadata.MetaDataOrchestrator.getModuleData(MetaDataOrchestrator.java:112)
    at com.ibm.ws.websvcs.annotations.collector.WASAnnotationCollector.getMDO(WASAnnotationCollector.java:214)
    at com.ibm.ws.websvcs.annotations.collector.WASAnnotationCollector.collect(WASAnnotationCollector.java:107)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.getClassDataObjects(WSModuleDescriptorImpl.java:411)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.getWARCDOs(WSModuleDescriptorImpl.java:369)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.containsJAXWSWebServices(WSModuleDescriptorImpl.java:210)
    at com.ibm.ws.webservices.admin.deploy.ServiceIndexDataBuilder.getWSData(ServiceIndexDataBuilder.java:48)
    at com.ibm.ws.webservices.admin.deploy.ServiceIndexServerTaskImpl.listWebServices(ServiceIndexServerTaskImpl.java:142)
    at com.ibm.ws.webservices.admin.deploy.ServiceIndexServerTaskImpl.listWebServices(ServiceIndexServerTaskImpl.java:107)
    at com.ibm.ws.webservices.admin.deploy.ServiceIndexServerTask.performTask(ServiceIndexServerTask.java:186)
    at com.ibm.ws.management.application.SchedulerImpl.run(SchedulerImpl.java:262)
    at java.lang.Thread.run(Thread.java:801)
 Caused by: java.util.EmptyStackException
    at java.util.Stack.peek(Stack.java:94)
    at java.util.Stack.pop(Stack.java:76)
    at com.ibm.ws.metadata.annotations.WSSignatureParser.handleGenericGrouping(WSSignatureParser.java:256)
    at com.ibm.ws.metadata.annotations.WSSignatureParser.popStack(WSSignatureParser.java:210)
    at com.ibm.ws.metadata.annotations.WSSignatureParser.parseSignature(WSSignatureParser.java:63)
    at com.ibm.ws.metadata.annotations.WSClassAdapter.visit(WSClassAdapter.java:100)
    at org.objectweb.asm.ClassReader.accept(Unknown Source)
    at org.objectweb.asm.ClassReader.accept(Unknown Source)
    at com.ibm.ws.metadata.annotations.AnnotationConfigReader.getAnnotationData(AnnotationConfigReader.java:440)
    at com.ibm.ws.metadata.annotations.AnnotationConfigReader.populateModuleData(AnnotationConfigReader.java:247)
    at com.ibm.ws.metadata.MetaDataOrchestrator.getModuleData(MetaDataOrchestrator.java:112)
    at com.ibm.ws.websvcs.annotations.collector.WASAnnotationCollector.getMDO(WASAnnotationCollector.java:214)
    at com.ibm.ws.websvcs.annotations.collector.WASAnnotationCollector.collect(WASAnnotationCollector.java:107)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.getClassDataObjects(WSModuleDescriptorImpl.java:411)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.getWARCDOs(WSModuleDescriptorImpl.java:369)
    at com.ibm.ws.websvcs.desc.WSModuleDescriptorImpl.containsJAXWSWebServices(WSModuleDescriptorImpl.java:210)
    at com.ibm.ws.webservices.admin.deploy.ServiceIndexDataBuilder.getWSData(ServiceIndexDataBuilder.java:48)
    at com.ibm.ws.webservices.admin.deploy.ServiceIndexServerTaskImpl.listWebServices(ServiceIndexServerTaskImpl.java:142)
    at com.ibm.ws.webservices.admin.deploy.ServiceIndexServerTaskImpl.listWebServices(ServiceIndexServerTaskImpl.java:107)
    at com.ibm.ws.webservices.admin.deploy.ServiceIndexServerTask.performTask(ServiceIndexServerTask.java:186)
    at com.ibm.ws.management.application.SchedulerImpl.run(SchedulerImpl.java:262)
    at java.lang.Thread.run(Thread.java:801)

 at java.util.Stack.peek(Stack.java:94)
 at java.util.Stack.pop(Stack.java:76)
 at com.ibm.ws.metadata.annotations.WSSignatureParser.handleGenericGrouping(WSSignatureParser.java:256)
 at com.ibm.ws.metadata.annotations.WSSignatureParser.popStack(WSSignatureParser.java:210)
 at com.ibm.ws.metadata.annotations.WSSignatureParser.parseSignature(WSSignatureParser.java:63)
 at com.ibm.ws.metadata.annotations.WSClassAdapter.visit(WSClassAdapter.java:100)
 at org.objectweb.asm.ClassReader.accept(Unknown Source)
 at org.objectweb.asm.ClassReader.accept(Unknown Source)
 at com.ibm.ws.metadata.annotations.AnnotationConfigReader.getAnnotationData(AnnotationConfigReader.java:440)
 ... 13 more
OS: Linux
WebSphere: v6.1.0.29
Java: J2RE 1.5.0 IBM J9 2.3 Linux x86-32 j9vmxi3223-20060504 (JIT enabled)
OS: Windows 7
WebSphere: v6.1.0.9
Java: J2RE 1.5.0 IBM J9 2.3 Windows Vista x86-32 j9vmwi3223-20070426 (JIT enabled)