2 Replies Latest reply on Nov 25, 2014 9:19 AM by stevenhu

    [jbpm6.2.0.CR2 for was8.5.5.2] Why deployment id is required for remote rest api to get task list or process instance list

    stevenhu

      I noticed the Kie-remote-client(previous Kie-service-client in 6.1) using KieRemoteHttpRequest instead of resteasy's ClientRequest to initiate the http transmission. I didn't provide the deployment id when I tried to get a list of task, and I got the NPE error pasted below. But when I provide a deployment id, the running is ok, but the task list obviously included tasks from processes in other deployment units. I don't understand why the deployment id is required to get a list of task that I can claim, start or complete.


      org.kie.services.client.api.command.exception.RemoteCommunicationException: Unable to retrieve content from response!

      at org.kie.services.client.api.command.AbstractRemoteCommandObject.executeRestCommand(AbstractRemoteCommandObject.java:425)

      Caused by: java.lang.NullPointerException

      at org.kie.services.client.api.command.AbstractRemoteCommandObject.executeRestCommand(AbstractRemoteCommandObject.java:409)

      ... 42 more


      Meantime, the websphere ffdc complained the error of "MalformedMessageException: Invalid CRLF found in header name"

      [11/24/14 9:48:34:860 EST]     FFDC Exception:com.ibm.wsspi.genericbnf.exception.MalformedMessageException SourceId:HttpInboundLink.handleNewInformation ProbeId:2 Reporter:com.ibm.ws.http.channel.inbound.impl.HttpInboundLink@95cb347b

      com.ibm.wsspi.genericbnf.exception.MalformedMessageException: Invalid CRLF found in header name

        at com.ibm.ws.genericbnf.impl.BNFHeadersImpl.findHeaderLength(BNFHeadersImpl.java:4773)

        at com.ibm.ws.genericbnf.impl.BNFHeadersImpl.parseHeaderName(BNFHeadersImpl.java:4817)

        at com.ibm.ws.genericbnf.impl.BNFHeadersImpl.parseHeaders(BNFHeadersImpl.java:2145)

        at com.ibm.ws.genericbnf.impl.GenericMessageImpl.parseMessage(GenericMessageImpl.java:364)

        at com.ibm.ws.http.channel.impl.HttpBaseMessageImpl.parseMessage(HttpBaseMessageImpl.java:2596)

        at com.ibm.ws.http.channel.impl.HttpServiceContextImpl.parseMessage(HttpServiceContextImpl.java:2636)

        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:352)

        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:302)

        at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:283)

        at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)

        at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)

        at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)

        at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)

        at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)

        at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:138)

        at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)

        at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775)

        at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:905)

        at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1864)

       

       

      ==> Performing default dump from com.ibm.ws.http.channel.impl.HTTPChannelDM :Mon Nov 24 09:48:34 EST 2014

      +Data for directive [defaulthttpchannel] obtained.:

      ==> Dump complete for com.ibm.ws.http.channel.impl.HTTPChannelDM :Mon Nov 24 09:48:34 EST 2014