Hi Amalka,

It seems like according to the current RESTTask implementation[1], it only
supports GET and POST methods and it doesn't support PUT method for REST
service invoke.
As a workaround, you could implement a custom java service task similar to
RESTTask implementation that supports rest of the REST API functionalities.

[Adding BPS team]
@BPS team: It's better if we could support this requirement in BPS 3.5.1.
Soon there will be more customers with above requirement. WDYT?

[1]
https://github.com/wso2/carbon-business-process/blob/master/components/bpmn/org.wso2.carbon.bpmn/src/main/java/org/wso2/carbon/bpmn/extensions/rest/RESTTask.java#L197

Best regards,
Amal

On Thu, Mar 31, 2016 at 5:15 PM, Amalka Subasinghe <[email protected]> wrote:

> Hi,
>
> $subject [1]
> When I invoke the same api via rest client - it works
>
> Configurations:
> <serviceTask id="servicetask2" name="Confimed"
> activiti:class="org.wso2.carbon.bpmn.extensions.rest.RESTTask">
>       <extensionElements>
>         <activiti:field name="serviceURL">
>           <activiti:expression><![CDATA[
> http://192.168.56.212:9763/services/AllocationTrackingToolDS/testdb]
> ]></activiti:expression>
>         </activiti:field>
>         <activiti:field name="input">
>           <activiti:expression><![CDATA[{"_post_testdb":{"id" : ${id},
> "status" : "Confirmed"}}]]></activiti:expression>
>         </activiti:field>
>         <activiti:field name="outputVariable">
>           <activiti:string><![CDATA[output]]></activiti:string>
>         </activiti:field>
>         <activiti:field name="method">
>           <activiti:string><![CDATA[PUT]]></activiti:string>
>         </activiti:field>
>         <activiti:field name="headers">
>
> <activiti:string><![CDATA[Content-Type:application/json]]></activiti:string>
>         </activiti:field>
>       </extensionElements>
>     </serviceTask>
>
> [1]
> TID: [-1234] [] [2016-03-31 11:25:37,925] ERROR
> {org.apache.catalina.core.StandardWrapperValve} -  Servlet.service() for
> servlet [bridgeservlet] in context with path [/] threw exception
> {org.apache.catalina.core.StandardWrapperValve}
> org.apache.axis2.AxisFault
>     at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
>     at
> org.wso2.carbon.core.transports.CarbonServlet.doGet(CarbonServlet.java:155)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>     at
> org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
>     at
> org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
>     at
> org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68)
>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>     at
> org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>     at
> org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>     at
> org.wso2.carbon.ui.filters.CSRFPreventionFilter.doFilter(CSRFPreventionFilter.java:88)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>     at
> org.wso2.carbon.ui.filters.CRLFPreventionFilter.doFilter(CRLFPreventionFilter.java:59)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>     at
> org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
>     at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
>     at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
>     at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
>     at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
>     at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
>     at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
>     at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
>     at
> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:99)
>     at
> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
>     at
> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:57)
>     at
> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
>     at
> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:62)
>     at
> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:159)
>     at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
>     at
> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:57)
>     at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
>     at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
>     at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
>     at
> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
>     at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1739)
>     at
> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1698)
>     at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>     at
> org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
>     at java.lang.Thread.run(Thread.java:722)
> Caused by: java.lang.NullPointerException
>     at
> org.apache.axis2.json.AbstractJSONOMBuilder.processDocument(AbstractJSONOMBuilder.java:96)
>     at
> org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:188)
>     at
> org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:146)
>     at
> org.apache.axis2.transport.http.util.RESTUtil.processURLRequest(RESTUtil.java:116)
>     at
> org.apache.axis2.transport.http.AxisServlet$RestRequestProcessor.processURLRequest(AxisServlet.java:843)
>     at
> org.wso2.carbon.core.transports.CarbonServlet.handleRestRequest(CarbonServlet.java:303)
>     at
> org.wso2.carbon.core.transports.CarbonServlet.doGet(CarbonServlet.java:152)
>     ... 44 more
>
>
> Thanks
> Amalka
>



-- 
*Amal Gunatilake*
Software Engineer
WSO2 Inc.; http://wso2.com
lean.enterprise.middleware
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to