Я пытаюсь использовать JBPM v5.4 в своем веб-приложении с использованием IBM WebSphere 6.1. JBPM поставляется с protobuf-java-2.4.1.jar
, поэтому я добавил эту банку в свое веб-приложение. Но когда я запускаю сервер, я получил следующее исключение из-за этой банки. Когда я удаляю эту банку, все работает нормально (за исключением случаев использования функции portbuf, происходит java.lang.NoClassDefFoundError
, и это ожидается).ProtoBuf jar вызывает исключение при использовании в веб-приложении
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
Что происходит на самом деле и то, что я должен сделать, чтобы решить это?
UPDATE Я создал пустой веб-приложение с только protobuf-java-2.4.1.jar
в это WEB-INF/lib
папка. Сервер запускает одно и то же исключение при запуске. Но когда я развертываю приложение в tomcat 6.33, он запускается без каких-либо исключений.
UPDATE Когда я развернул приложение на своем тестовом сервере, он сработал. Вот мои разработки и тестирования машины среды конкретной информации
Тестирование
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)
Когда я связываю shared lib с WAR, на экране отображается следующее сообщение: «Исключение, вызванное RequiredModelMBean при попытке вызвать операцию setApplicationInfo com.ibm.websphere.management.exception.AdminException: ADMA017EE' –
Кажется, проблема с продуктом , У меня есть вопрос с моим последним наблюдением ... –
Похоже, что тестовый/рабочий сервер находится на значительно более новом исправлении, чем сервер разработки, что является хорошим доказательством того, что это проблема продукта. Я бы рекомендовал обновить сервер разработки. Я не знаю, что такое ошибка AdminException; это похоже на несвязанную проблему, которую вам нужно будет расследовать отдельно. –