Hello
Tools use: Axis2 1.0, Sandesha2 1.0 and apache-tomcat-5.5.15
I'm trying to use the User guide example with the client
"UserguideClient.java" in sandesha2 1.0-bin.zip. I use the
RMSampleService.aar given in the Sandesha2-1.0-bin.zip. When I launch
the client, it could never get a connection to the server. In the
Console, I have no response. But when I have a look in TCPMon, I can see
the request "CreateSequence" was sent, because the client didn't reveive
the "ResponseCreateSequence". I tried to change the timeout but it
doesn't solve the problem, I think the connection to the server is not
available but the ERP is OK.
A moment later, the time out error appeared for all request CreateSequence:
POST /axis2/services/RMSampleService HTTP/1.1
User-Agent: Axis2
SOAPAction: http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence
Host: www.apache.org:8080
java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:507)
at java.net.Socket.connect(Socket.java:457)
at java.net.Socket.<init>(Socket.java:365)
at java.net.Socket.<init>(Socket.java:178)
at org.apache.ws.commons.tcpmon.Connection.run(Connection.java:372)
Code Client
package client;
import javax.xml.namespace.QName;
import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.soap.SOAPBody;
import org.apache.axis2.AxisFault;
import org.apache.axis2.Constants;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.client.ServiceClient;
import org.apache.axis2.client.async.AsyncResult;
import org.apache.axis2.client.async.Callback;
import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.context.ConfigurationContextFactory;
import org.apache.sandesha2.client.SandeshaClientConstants;
public class UserguideEchoClient {
private final static String applicationNamespaceName =
"http://tempuri.org/";
private final static String echoString = "echoString";
private final static String Text = "Text";
private final static String Sequence = "Sequence";
private final static String echoStringResponse = "echoStringResponse";
private final static String EchoStringReturn = "EchoStringReturn";
private static String toEPR =
"http://localhost:8080/axis2/services/RMSampleService";
private static String CLIENT_REPO_PATH =
"/home/mancinee/workspace/exemplewsrm/client/Client_Repo";
public static void main(String[] args) throws AxisFault,
InterruptedException{
String axis2_xml = CLIENT_REPO_PATH + "/client_axis2.xml";
System .out.println (axis2_xml);
ConfigurationContext configContext =
ConfigurationContextFactory.createConfigurationContextFromFileSystem(CLIENT_REPO_PATH,axis2_xml);
ServiceClient serviceClient = new ServiceClient
(configContext,null);
Options clientOptions = new Options ();
clientOptions.setTo(new EndpointReference (toEPR));
clientOptions.setTransportInProtocol(Constants.TRANSPORT_HTTP);
clientOptions.setUseSeparateListener(true);
serviceClient.setOptions(clientOptions);
// serviceClient.engageModule(new QName ("sandesha2"));
// serviceClient.engageModule(new QName ("addressing"));
clientOptions.setProperty(SandeshaClientConstants.LAST_MESSAGE,
"true");
Callback callback1 = new TestCallback ("Callback 1");
serviceClient.sendReceiveNonBlocking
(getEchoOMBlock("echo1","sequence1"),callback1);
Callback callback2 = new TestCallback ("Callback 2");
serviceClient.sendReceiveNonBlocking(getEchoOMBlock("echo2","sequence1"),callback2);
clientOptions.setProperty(SandeshaClientConstants.LAST_MESSAGE,
"true");
Callback callback3 = new TestCallback ("Callback 3");
serviceClient.sendReceiveNonBlocking(getEchoOMBlock("echo3","sequence1"),callback3);
while (!callback1.isComplete()) {
Thread.sleep(1000);
}
Thread.sleep(4000);
}
private static OMElement getEchoOMBlock(String text, String
sequenceKey) {
OMFactory fac = OMAbstractFactory.getOMFactory();
OMNamespace applicationNamespace =
fac.createOMNamespace(applicationNamespaceName,"ns1");
OMElement echoStringElement = fac.createOMElement(echoString,
applicationNamespace);
OMElement textElem = fac.createOMElement(Text,applicationNamespace);
OMElement sequenceElem =
fac.createOMElement(Sequence,applicationNamespace);
textElem.setText(text);
sequenceElem.setText(sequenceKey);
echoStringElement.addChild(textElem);
echoStringElement.addChild(sequenceElem);
return echoStringElement;
}
static class TestCallback extends Callback {
String name = null;
public TestCallback (String name) {
this.name = name;
}
public void onComplete(AsyncResult result) {
SOAPBody body = result.getResponseEnvelope().getBody();
OMElement echoStringResponseElem =
body.getFirstChildWithName(new QName
(applicationNamespaceName,echoStringResponse));
OMElement echoStringReturnElem =
echoStringResponseElem.getFirstChildWithName(new QName
(applicationNamespaceName,EchoStringReturn));
String resultStr = echoStringReturnElem.getText();
System.out.println("Callback '" + name + "' got result:" +
resultStr);
}
public void onError (Exception e) {
System.out.println("Error reported for test call back");
e.printStackTrace();
}
}
}
Thanks for your time
Regards
Elodie
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]