Parameter of SOAP call is not received
by Olivier Cailloux
0Hello,
I am trying to call a web service I just developed and installed on
JBoss (using a client in the R language with the SSOAP package). The web
service WSDL file is here [http://smg8.ulb.ac.be:8080/web2?wsdl].
I can call the web service and obtain an answer, but I can't make the
web service receive the "string" parameter which is supposed to reach
it. The problem might be on the client side (because consuming the web
service from a generic tool work), but I can't see what the client is
doing wrong.
Using eclipse Web Service explorer, I can consume the web service with
the following SOAP body (eclipse does not show me the headers however):
<soapenv:Body>
<q0:greetMe>
<arg0>hey</arg0>
</q0:greetMe>
</soapenv:Body>
And it correctly returns:
<env:Body>
<greetMeResponse>
<return>Hello, hey.</return>
</greetMeResponse>
</env:Body>
However, with my other client (in R), I can't send the "arg0" argument
to the web service. The String argument is always null when my Java
implementation code is called. Debugging the client, it seems that the
client sends the following SOAP body:
<SOAP-ENV:Body>
<greetMe xmlns="http://web2.web/">
<arg0 xsi:type="xsd:string">hey</arg0>
</greetMe>
</SOAP-ENV:Body>
I don't have however easy access to the full xml messages sent and
received and it is difficult to change its contents (I don't really
master the R SOAP library). Apparently there could be a namespace
problem, i.e. AFAIU arg0 in the R client is qualified whether it is not
in the eclipse call. Is this possibly what prevents jboss from sending
the argument to the web service class definition? In that case, is it
possible to ask jboss to be a bit more relax and allow that kind of
calls as well? Maybe by changing the way jboss generate the wsdl?
I am also looking for a way to enable debugging on the jboss side to see
exactly what SOAP envelope is received from the clients, how it is
parsed by jboss, and why it does not send the arg0 element to my code in
the case of the R client... I tried to add the following to
jboss-log4j.xml (and restarted the server), with no effect:
<category name="org.jboss.axis.transport.http.AxisServlet">
<priority value="DEBUG"/>
</category>
<category name="org.jboss.web">
<priority value="DEBUG"/>
</category>
Thank you for any help or pointer. I feel this problem must be very
simple to solve but I am stuck there since several days.
Olivier
16 years, 10 months
[JBoss jBPM] - WARN [ProxyWarnLog] Narrowing proxy to class org.jbpm.graph
by vnm
Hi,
I am using jbpm-jpdl-suite-3.2.3 and below is my processdefinition in which I have configured super state
<?xml version="1.0" encoding="UTF-8"?>
|
| <process-definition xmlns="urn:jbpm.org:jpdl-3.2" name="SuperStateSample">
|
|
| <start-state name="start-state1">
| <transition to="node1"></transition>
| </start-state>
|
|
| <node name="node1">
| <event type="node-enter">
| <action name="action1" class="testFolder.ActionHandler1"></action>
| </event>
| <transition to="node2"></transition>
| </node>
|
| <node name="node2">
| <event type="node-enter">
| <action name="action2" class="testFolder.ActionHandler2"></action>
| </event>
| <transition to="super-state1"></transition>
| </node>
|
| <super-state name="super-state1">
| <node name="node3">
| <event type="node-enter">
| <action name="action3" class="testFolder.ActionHandler3"></action>
| </event>
| <transition to="join1"></transition>
| </node>
| <node name="node4">
| <event type="node-enter">
| <action name="action4" class="testFolder.ActionHandler4"></action>
| </event>
| <transition to="join1"></transition>
| </node>
| <decision name="decision1">
| <handler class="testFolder.DecisionHandler1"></handler>
| <transition to="node3"></transition>
| <transition to="join1" name="to join1"></transition>
| </decision>
| <decision name="decision2">
| <handler class="testFolder.DecisionHandler2"></handler>
| <transition to="node4"></transition>
| <transition to="join1" name="to join1"></transition>
| </decision>
| <fork name="fork1">
| <transition to="decision1"></transition>
| <transition to="decision2" name="to decision2"></transition>
| </fork>
| <join name="join1"></join>
| <transition to="node5"></transition>
| </super-state>
|
| <node name="node5">
| <event type="node-enter">
| <action name="action5" class="testFolder.ActionHandler5"></action>
| </event>
| <transition to="end-state1"></transition>
| </node>
|
|
| <end-state name="end-state1"></end-state>
|
|
| </process-definition>
but on singnaling processinstance of this processdefition I am getting follwing warning which is because of using superstate in my processdefintion...
| WARN [ProxyWarnLog] Narrowing proxy to class org.jbpm.graph.def.SuperState - this operation breaks ==
And because of this problem nodes which are part of superstate are not called on execution of processinstance....
Thanks in advance for help
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4239762#4239762
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4239762
16 years, 10 months
[Microcontainer] - Re: Deployers Ordering
by richard.opalka@jboss.com
And I'd expect the following test to pass:
---
public void testWebServicesDeployersOrder() throws Exception
{
DeployerClient main = createMainDeployer();
TestFlowDeployer deployer1 = new TestFlowDeployer("FakeDeployer");
deployer1.setOutputs("WebServicesMetaData", "WebServiceDeployment", "JBossWebMetaData" );
addDeployer(main, deployer1);
TestFlowDeployer deployer2 = new TestFlowDeployer("WebServicesDeploymentTypeDeployer");
deployer2.setInputs("WebServicesMetaData", "WebServiceDeployment", "JBossWebMetaData" );
deployer2.setOutputs("DeploymentType", "JBossWebMetaData");
addDeployer(main, deployer2);
TestFlowDeployer deployer3 = new TestFlowDeployer("WebServiceDeployerEJB");
deployer3.setInputs("JBossWebMetaData", "DeploymentType");
deployer3.setOutputs("JBossWebMetaData");
addDeployer(main, deployer3);
TestFlowDeployer deployer4 = new TestFlowDeployer("WebServiceDeployerPreJSE");
deployer4.setInputs("JBossWebMetaData", "DeploymentType");
deployer4.setOutputs("JBossWebMetaData");
addDeployer(main, deployer4);
TestFlowDeployer deployer5 = new TestFlowDeployer("AbstractWarDeployer");
deployer5.setInputs("JBossWebMetaData");
deployer5.setOutputs("WarDeployment");
addDeployer(main, deployer5);
TestFlowDeployer deployer6 = new TestFlowDeployer("ServiceCL");
deployer6.setInputs("DeploymentType", "WarDeployment");
addDeployer(main, deployer6);
Deployment deployment = createSimpleDeployment("testWSDeploymentOrder");
main.addDeployment(deployment);
main.process();
System.out.println("D1: " + deployer1.getDeployOrder());
System.out.println("D2: " + deployer2.getDeployOrder());
System.out.println("D3: " + deployer3.getDeployOrder());
System.out.println("D4: " + deployer4.getDeployOrder());
System.out.println("D5: " + deployer5.getDeployOrder());
System.out.println("D6: " + deployer6.getDeployOrder());
assertEquals(1, deployer1.getDeployOrder());
assertEquals(2, deployer2.getDeployOrder());
assertEquals(3, deployer3.getDeployOrder());
assertEquals(4, deployer4.getDeployOrder());
assertEquals(5, deployer5.getDeployOrder());
assertEquals(6, deployer6.getDeployOrder());
assertEquals(-1, deployer1.getUndeployOrder());
assertEquals(-1, deployer2.getUndeployOrder());
assertEquals(-1, deployer3.getUndeployOrder());
assertEquals(-1, deployer4.getUndeployOrder());
assertEquals(-1, deployer5.getUndeployOrder());
assertEquals(-1, deployer6.getUndeployOrder());
main.removeDeployment(deployment);
main.process();
assertEquals(1, deployer1.getDeployOrder());
assertEquals(2, deployer2.getDeployOrder());
assertEquals(3, deployer3.getDeployOrder());
assertEquals(4, deployer4.getDeployOrder());
assertEquals(5, deployer5.getDeployOrder());
assertEquals(6, deployer6.getDeployOrder());
assertEquals(12, deployer1.getUndeployOrder());
assertEquals(11, deployer2.getUndeployOrder());
assertEquals(10, deployer3.getUndeployOrder());
assertEquals(9, deployer4.getUndeployOrder());
assertEquals(8, deployer5.getUndeployOrder());
assertEquals(7, deployer6.getUndeployOrder());
main.addDeployment(deployment);
main.process();
assertEquals(13, deployer1.getDeployOrder());
assertEquals(14, deployer2.getDeployOrder());
assertEquals(15, deployer3.getDeployOrder());
assertEquals(16, deployer4.getDeployOrder());
assertEquals(17, deployer5.getDeployOrder());
assertEquals(18, deployer6.getDeployOrder());
assertEquals(12, deployer1.getUndeployOrder());
assertEquals(11, deployer2.getUndeployOrder());
assertEquals(10, deployer3.getUndeployOrder());
assertEquals(9, deployer4.getUndeployOrder());
assertEquals(8, deployer5.getUndeployOrder());
assertEquals(7, deployer6.getUndeployOrder());
}
---
The test output is:
---
...
973 DEBUG [DeployersImpl] Fully Deployed testWSDeploymentOrder
D1: 1
D2: 4
D3: 2
D4: 3
D5: 5
D6: 6
...
View the original post : http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4239756#4239756
Reply to the post : http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4239756
16 years, 10 months