-
1. Re: Deployment Units containing supporting java classes
swiderski.maciej Aug 6, 2014 1:41 AM (in response to jojones54)it should be perfectly ok to include any class in kjar (next to your processes) regardless if they are serializable or not. Classes that are used as process variables must be serializable. Could you please attach complete stacktrace from server.log to be able to identify the root cause and maybe suggest some way out?
HTH
-
2. Re: Deployment Units containing supporting java classes
jojones54 Aug 6, 2014 1:13 PM (in response to swiderski.maciej)Here is excerpt from server.log
This is different error than I reported earlier, but hopefully you can tell us something to look at.
Again, this same code is deploying successfully with 6.0.1.Final
12:17:28,651 INFO [org.drools.compiler.kie.builder.impl.KieRepositoryImpl] (pool-18-thread-20) KieModule was added:MemoryKieModule[ ReleaseId=com.unisys.spc.bpm:StatusPoller:4.0.31002]
12:17:28,900 INFO [org.drools.compiler.kie.builder.impl.KieRepositoryImpl] (pool-18-thread-7) KieModule was added:MemoryKieModule[ ReleaseId=com.unisys.spc.bpm:StatusPoller:4.0.31002]
12:17:57,494 WARN [org.kie.remote.services.rest.exception.DescriptiveExceptionHandler] (http-0.0.0.0-0.0.0.0-8080-1) Exception thrown when processing request [/deployment/com.unisys.spc.bpm:StatusPoller:4.0.31002/deploy?strategy=PER_REQUEST]; responding with status -1: java.io.EOFException: No content to map to Object due to end of input
at org.codehaus.jackson.map.ObjectMapper._initForReading(ObjectMapper.java:2775) [jackson-mapper-asl-1.9.9.jar:1.9.9]
at org.codehaus.jackson.map.ObjectMapper._readValue(ObjectMapper.java:2691) [jackson-mapper-asl-1.9.9.jar:1.9.9]
at org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1315) [jackson-mapper-asl-1.9.9.jar:1.9.9]
at org.codehaus.jackson.jaxrs.JacksonJsonProvider.readFrom(JacksonJsonProvider.java:419) [jackson-jaxrs-1.9.9.jar:1.9.9]
at org.jboss.resteasy.core.interception.MessageBodyReaderContextImpl.proceed(MessageBodyReaderContextImpl.java:105) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.interceptors.encoding.GZIPDecodingInterceptor.read(GZIPDecodingInterceptor.java:61) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.interception.MessageBodyReaderContextImpl.proceed(MessageBodyReaderContextImpl.java:108) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.MessageBodyParameterInjector.inject(MessageBodyParameterInjector.java:169) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.MethodInjectorImpl.injectArguments(MethodInjectorImpl.java:124) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:147) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:257) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:222) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:211) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:525) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:502) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:119) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:208) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:55) [resteasy-jaxrs-2.3.2.Final.jar:]
at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:50) [resteasy-jaxrs-2.3.2.Final.jar:]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:62) [weld-core-1.1.5.AS71.Final.jar:2012-02-10 15:31]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.jboss.solder.servlet.exception.CatchExceptionFilter.doFilter(CatchExceptionFilter.java:65) [solder-impl-3.2.1.Final.jar:3.2.1.Final]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.jboss.solder.servlet.event.ServletEventBridgeFilter.doFilter(ServletEventBridgeFilter.java:74) [solder-impl-3.2.1.Final.jar:3.2.1.Final]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.kie.remote.services.rest.jaxb.DynamicJaxbContextFilter.doFilter(DynamicJaxbContextFilter.java:29) [kie-services-remote-6.1.0.CR1.jar:6.1.0.CR1]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.jbpm.designer.web.filter.impl.PluggableFilter.doFilter(PluggableFilter.java:70) [jbpm-designer-backend-6.1.0.CR1.jar:6.1.0.CR1]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.uberfire.security.server.UberFireSecurityFilter.doFilter(UberFireSecurityFilter.java:283) [uberfire-security-server-0.4.0.CR1.jar:0.4.0.CR1]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:397) [jbossweb-7.0.13.Final.jar:]
at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:397) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.13.Final.jar:]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.13.Final.jar:]
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671) [jbossweb-7.0.13.Final.jar:]
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.13.Final.jar:]
at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_45]
-
3. Re: Deployment Units containing supporting java classes
swiderski.maciej Aug 7, 2014 4:55 AM (in response to jojones54)James,
could you please try adding empty deployment descriptor into the POST body of the request and ensure that the content type is xml:
<deployment-descriptor/>
Content-type: application/xml
Depending on the app servers it might require deployment descriptor to be given even if it's empty.
HTH
-
4. Re: Deployment Units containing supporting java classes
jojones54 Aug 8, 2014 8:05 AM (in response to swiderski.maciej)We can successfully deploy and execute after deleting the following code from our project.
Fortunately, this is obsolete test code, but perhaps you can enlighten us on what has changed in 6.1.0? Is 6.1.0 more rigorous about flagging static main() entry points?
public class ProcessMain {
private static RuntimeManager manager;
private static UserGroupCallback userGroupCallback;
public static void main(String[] args){
RuntimeEnvironment environment = RuntimeEnvironmentBuilder.getDefault().userGroupCallback(userGroupCallback)
.addAsset(ResourceFactory.newClassPathResource("StatusPoller.bpmn"), ResourceType.BPMN2)
.registerableItemsFactory(new DefaultRegisterableItemsFactory()
{@Override
public Map<String, WorkItemHandler> getWorkItemHandlers(RuntimeEngine runtime)
{Map<String, WorkItemHandler> handlers = super.getWorkItemHandlers(runtime);
return handlers;
}
}).get();manager = RuntimeManagerFactory.Factory.get().newSingletonRuntimeManager(environment);
important to register RuntimeManager in the registry as callbacks
rely on it to move process forward
RuntimeManagerRegistry.get().addRuntimeManager(manager.getIdentifier(), manager);RuntimeEngine runtime = manager.getRuntimeEngine(EmptyContext.get());
KieSession ksession = runtime.getKieSession();
ProcessInstance processInstance = ksession.startProcess("com.unisys.spc.bpm.StatusPoller");
try { Thread.sleep(10000); }
catch (InterruptedException e)
{
e.printStackTrace();
}
}
} -
5. Re: Deployment Units containing supporting java classes
jojones54 Aug 8, 2014 11:47 AM (in response to jojones54)I finally noticed that ProcessMain.java was using obsolete versions of jBPM Runtime APIs. ProcessMain had been generated long ago by a previous version of jBPM project wizard for Eclipse. I guess jBPM 6.1 is doing more rigorous analysis of Java classes during deployment.phase.
-
6. Re: Deployment Units containing supporting java classes
jojones54 Aug 12, 2014 6:44 PM (in response to swiderski.maciej)We are still having trouble deploying some of our processes in jbpm-6.1.0.CR1
Is there any way to increase the logging verbosity relevant to deployment processing that might give us more clues?
Server.log doesn't give any clues other than
16:27:48,748 ERROR [org.kie.remote.services.rest.jaxb.DynamicJaxbContext] (http-0.0.0.0-0.0.0.0-8080-2) JAXB context instance could not be found when undeploying deployment 'com.unisys.spc.bpm:CommissionVm:4.0.31430'!
-
7. Re: Deployment Units containing supporting java classes
sanjay05222 Sep 21, 2015 3:06 PM (in response to jojones54)@james
were you able to resolve this issue and how ?
Thanks
Sanjay Gautam