Moved Spring-WS to separate dir.
This commit is contained in:
35
samples/echo/client/saaj/build.xml
Normal file
35
samples/echo/client/saaj/build.xml
Normal file
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0"?>
|
||||
|
||||
<project name="spring-ws-airline-sample-saaj-client" default="build">
|
||||
<property name="bin.dir" value="bin"/>
|
||||
<property name="src.dir" value="src"/>
|
||||
|
||||
<target name="build">
|
||||
<mkdir dir="${bin.dir}"/>
|
||||
<javac srcdir="${src.dir}" destdir="${bin.dir}">
|
||||
<classpath>
|
||||
<pathelement location="lib/saaj-api.jar"/>
|
||||
</classpath>
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
<target name="clean">
|
||||
<delete dir="${bin.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="run" depends="echo"/>
|
||||
|
||||
<target name="echo" depends="build">
|
||||
<java classname="org.springframework.ws.samples.echo.client.saaj.EchoClient" fork="true" failonerror="true">
|
||||
<classpath>
|
||||
<pathelement location="${bin.dir}"/>
|
||||
<pathelement location="lib/saaj-api.jar"/>
|
||||
<pathelement location="lib/saaj-impl.jar"/>
|
||||
<pathelement location="lib/mail.jar"/>
|
||||
<pathelement location="lib/activation.jar"/>
|
||||
<pathelement location="lib/xercesImpl.jar"/>
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
BIN
samples/echo/client/saaj/lib/activation.jar
Normal file
BIN
samples/echo/client/saaj/lib/activation.jar
Normal file
Binary file not shown.
BIN
samples/echo/client/saaj/lib/mail.jar
Normal file
BIN
samples/echo/client/saaj/lib/mail.jar
Normal file
Binary file not shown.
BIN
samples/echo/client/saaj/lib/saaj-api.jar
Normal file
BIN
samples/echo/client/saaj/lib/saaj-api.jar
Normal file
Binary file not shown.
BIN
samples/echo/client/saaj/lib/saaj-impl.jar
Normal file
BIN
samples/echo/client/saaj/lib/saaj-impl.jar
Normal file
Binary file not shown.
BIN
samples/echo/client/saaj/lib/xercesImpl.jar
Normal file
BIN
samples/echo/client/saaj/lib/xercesImpl.jar
Normal file
Binary file not shown.
10
samples/echo/client/saaj/readme.txt
Normal file
10
samples/echo/client/saaj/readme.txt
Normal file
@@ -0,0 +1,10 @@
|
||||
SPRING WEB SERVICES
|
||||
|
||||
This directory contains a Java clients for the Echo Web Service that uses SAAJ: SOAP with Attachments API for Java. It
|
||||
creates a SOAP message for the 'echo' operation, and sends it using SAAJ. This client does not use Spring-WS in any way.
|
||||
|
||||
SAJA Client Sample table of contents
|
||||
---------------------------------------------------
|
||||
* src - The source files for the client
|
||||
* build.xml - Ant build file with a 'build' and a 'run' target
|
||||
|
||||
@@ -0,0 +1,101 @@
|
||||
/*
|
||||
* Copyright 2006 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.ws.samples.echo.client.saaj;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
|
||||
import javax.xml.soap.MessageFactory;
|
||||
import javax.xml.soap.Name;
|
||||
import javax.xml.soap.SOAPBodyElement;
|
||||
import javax.xml.soap.SOAPConnection;
|
||||
import javax.xml.soap.SOAPConnectionFactory;
|
||||
import javax.xml.soap.SOAPEnvelope;
|
||||
import javax.xml.soap.SOAPException;
|
||||
import javax.xml.soap.SOAPFault;
|
||||
import javax.xml.soap.SOAPMessage;
|
||||
import javax.xml.transform.TransformerException;
|
||||
import javax.xml.transform.TransformerFactory;
|
||||
|
||||
/**
|
||||
* A client for the Echo Web Service that uses SAAJ.
|
||||
*
|
||||
* @author Ben Ethridge
|
||||
* @author Arjen Poutsma
|
||||
*/
|
||||
public class EchoClient {
|
||||
|
||||
public static final String NAMESPACE_URI = "http://www.springframework.org/spring-ws/samples/echo";
|
||||
|
||||
public static final String PREFIX = "tns";
|
||||
|
||||
private SOAPConnectionFactory connectionFactory;
|
||||
|
||||
private MessageFactory messageFactory;
|
||||
|
||||
private URL url;
|
||||
|
||||
public EchoClient(String url) throws SOAPException, MalformedURLException {
|
||||
connectionFactory = SOAPConnectionFactory.newInstance();
|
||||
messageFactory = MessageFactory.newInstance();
|
||||
this.url = new URL(url);
|
||||
}
|
||||
|
||||
private SOAPMessage createEchoRequest() throws SOAPException {
|
||||
SOAPMessage message = messageFactory.createMessage();
|
||||
SOAPEnvelope envelope = message.getSOAPPart().getEnvelope();
|
||||
Name echoRequestName = envelope.createName("echoRequest", PREFIX, NAMESPACE_URI);
|
||||
SOAPBodyElement echoRequestElement = message.getSOAPBody()
|
||||
.addBodyElement(echoRequestName);
|
||||
echoRequestElement.setValue("Hello");
|
||||
return message;
|
||||
}
|
||||
|
||||
public void callWebService() throws SOAPException, IOException {
|
||||
SOAPMessage request = createEchoRequest();
|
||||
SOAPConnection connection = connectionFactory.createConnection();
|
||||
SOAPMessage response = connection.call(request, url);
|
||||
if (!response.getSOAPBody().hasFault()) {
|
||||
writeEchoResponse(response);
|
||||
}
|
||||
else {
|
||||
SOAPFault fault = response.getSOAPBody().getFault();
|
||||
System.err.println("Received SOAP Fault");
|
||||
System.err.println("SOAP Fault Code :" + fault.getFaultCode());
|
||||
System.err.println("SOAP Fault String :" + fault.getFaultString());
|
||||
}
|
||||
}
|
||||
|
||||
private void writeEchoResponse(SOAPMessage message) throws SOAPException {
|
||||
SOAPEnvelope envelope = message.getSOAPPart().getEnvelope();
|
||||
Name echoResponseName = envelope.createName("echoResponse", PREFIX, NAMESPACE_URI);
|
||||
SOAPBodyElement echoResponseElement = (SOAPBodyElement) message
|
||||
.getSOAPBody().getChildElements(echoResponseName).next();
|
||||
String echoValue = echoResponseElement.getTextContent();
|
||||
System.out.println("Echo Response [" + echoValue + "]");
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
String url = "http://localhost:8080/echo/services";
|
||||
if (args.length > 0) {
|
||||
url = args[0];
|
||||
}
|
||||
EchoClient echoClient = new EchoClient(url);
|
||||
echoClient.callWebService();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user