testcase for databinding issue
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@711522 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
57ec345e85
commit
257f0ded36
18 changed files with 1154 additions and 1 deletions
178
sandbox/ramkumar/helloworld-ws-reference/README
Normal file
178
sandbox/ramkumar/helloworld-ws-reference/README
Normal file
|
@ -0,0 +1,178 @@
|
|||
Hello World Web Service References Sample
|
||||
=========================================
|
||||
This sample demonstrates an SCA reference that uses a web service binding.
|
||||
|
||||
The README in the samples directory (the directory above this) provides
|
||||
general instructions about building and running samples. Take a look there
|
||||
first.
|
||||
|
||||
If you just want to run it to see what happens you need to run the server first
|
||||
so open a command prompt, navigate to the helloworld-ws-service sample directory
|
||||
and do
|
||||
|
||||
ant run
|
||||
|
||||
OR if you don't have ant, on Windows do
|
||||
|
||||
java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-helloworld-ws-service.jar helloworld.HelloWorldServer
|
||||
|
||||
and on *nix do
|
||||
|
||||
java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-service.jar helloworld.HelloWorldServer
|
||||
|
||||
|
||||
Once the server is running open a command prompt, navigate to this sample
|
||||
directory and do:
|
||||
|
||||
ant run
|
||||
|
||||
OR if you don't have ant, on Windows do
|
||||
|
||||
java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-helloworld-ws-reference.jar helloworld.HelloWorldClient
|
||||
|
||||
and on *nix do
|
||||
|
||||
java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-reference.jar helloworld.HelloWorldClient
|
||||
|
||||
|
||||
Sample Overview
|
||||
---------------
|
||||
The sample provides a single component that is wired to a reference with a
|
||||
web service binding. The binding refers to WSDL that identifies the service
|
||||
exposed by the helloworld-ws-service sample.
|
||||
|
||||
helloworld-ws-reference/
|
||||
src/
|
||||
main/
|
||||
java/
|
||||
helloworld/
|
||||
HelloWorldService.java - interface description for
|
||||
HelloWorldServiceComponent
|
||||
HelloWorldServiceComponent.java - component implementation
|
||||
HelloWorldClient.java - starts the SCA Runtime and
|
||||
deploys the helloworldwsclient
|
||||
.composite. It then calls the
|
||||
HelloWorldServiceComponent
|
||||
resources/
|
||||
wsdl
|
||||
helloworld.wsdl - the service description that the
|
||||
SCA reference uses to bind to
|
||||
helloworldwsclient.composite - the SCA assembly for this sample
|
||||
logging.properties - log4j configuration file
|
||||
test/
|
||||
java/
|
||||
helloworld/
|
||||
HelloWorldClientTestCase.java - JUnit test case
|
||||
HelloWorldServerTest.java - starts the Web service
|
||||
helloworld-ws-reference.png - a pictorial representation of the
|
||||
sample .composite file
|
||||
build.xml - the Ant build file
|
||||
pom.xml - the Maven build file
|
||||
|
||||
Building And Running The Sample Using Ant
|
||||
-----------------------------------------
|
||||
With the binary distribution the sample can be built and run using Ant. Before
|
||||
you do this start up the service that the reference will talk to. To do this
|
||||
run up the helloworld-ws-service test. Take a look at the README in that sample
|
||||
and you will see you need the following commands
|
||||
|
||||
cd helloworld-ws-service
|
||||
ant run
|
||||
|
||||
Once done you can now compile and run this sample using the following commands;
|
||||
|
||||
cd helloworld-ws-reference
|
||||
ant compile
|
||||
ant run
|
||||
|
||||
You should see the following output from the run target.
|
||||
|
||||
run:
|
||||
[java] Injected helloWorldService
|
||||
[java] Called getGreetings
|
||||
[java] Hello World
|
||||
|
||||
Building And Running The Sample Using Maven
|
||||
-------------------------------------------
|
||||
With either the binary or source distributions the sample can be built and run
|
||||
using Maven as follows. When using Maven you don't need to run the helloworld-
|
||||
ws-service sample first as Maven does this for you.
|
||||
|
||||
cd helloworld-ws-reference
|
||||
mvn
|
||||
|
||||
You should see the following output from the test phase.
|
||||
|
||||
-------------------------------------------------------
|
||||
T E S T S
|
||||
-------------------------------------------------------
|
||||
Running helloworld.HelloWorldClientTestCase
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.core.StandardEngine start
|
||||
INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.startup.ContextConfig defaultWebConfig
|
||||
INFO: No default web.xml
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/j2ee_1_4.xsd
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/xml.xsd
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_2_
|
||||
0.xsd
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/web-app_2_4.xsd
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_1_1.xs
|
||||
d
|
||||
14-Jan-2008 14:06:12 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_client
|
||||
_1_1.xsd
|
||||
14-Jan-2008 14:06:12 org.apache.coyote.http11.Http11Protocol init
|
||||
INFO: Initializing Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:06:12 org.apache.coyote.http11.Http11Protocol start
|
||||
INFO: Starting Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:06:12 org.apache.tuscany.sca.http.tomcat.TomcatServer addServletM
|
||||
apping
|
||||
INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
|
||||
Injected helloWorldService
|
||||
Called getGreetings
|
||||
14-Jan-2008 14:06:14 org.apache.coyote.http11.Http11Protocol destroy
|
||||
INFO: Stopping Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.core.StandardEngine start
|
||||
INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.loader.WebappLoader start
|
||||
INFO: Dual registration of jndi stream handler: factory already defined
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.startup.ContextConfig defaultWebConfig
|
||||
INFO: No default web.xml
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/j2ee_1_4.xsd
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/xml.xsd
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_2_
|
||||
0.xsd
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/web-app_2_4.xsd
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_1_1.xs
|
||||
d
|
||||
14-Jan-2008 14:06:17 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_client
|
||||
_1_1.xsd
|
||||
14-Jan-2008 14:06:17 org.apache.coyote.http11.Http11Protocol init
|
||||
INFO: Initializing Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:06:17 org.apache.coyote.http11.Http11Protocol start
|
||||
INFO: Starting Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:06:17 org.apache.tuscany.sca.http.tomcat.TomcatServer addServletM
|
||||
apping
|
||||
INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
|
||||
Injected helloWorldService
|
||||
Called getGreetings
|
||||
14-Jan-2008 14:06:18 org.apache.coyote.http11.Http11Protocol destroy
|
||||
INFO: Stopping Coyote HTTP/1.1 on http-8085
|
||||
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 13.625 sec
|
||||
|
||||
This shows that the Junit test cases have run successfully.
|
72
sandbox/ramkumar/helloworld-ws-reference/build.xml
Normal file
72
sandbox/ramkumar/helloworld-ws-reference/build.xml
Normal file
|
@ -0,0 +1,72 @@
|
|||
<!--
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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.
|
||||
-->
|
||||
<project name="helloworld-ws-reference" default="compile">
|
||||
<property name="test.class" value="helloworld.HelloWorldClient" />
|
||||
<property name="test.jar" value="sample-helloworld-ws-reference.jar" />
|
||||
|
||||
<target name="init">
|
||||
<mkdir dir="target/classes"/>
|
||||
</target>
|
||||
|
||||
<target name="compile" depends="init">
|
||||
<javac srcdir="src/main/java"
|
||||
destdir="target/classes"
|
||||
debug="on"
|
||||
source="1.5"
|
||||
target="1.5">
|
||||
<classpath>
|
||||
<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
|
||||
</classpath>
|
||||
</javac>
|
||||
<copy todir="target/classes">
|
||||
<fileset dir="src/main/resources"/>
|
||||
</copy>
|
||||
<jar destfile="target/${test.jar}" basedir="target/classes">
|
||||
<manifest>
|
||||
<attribute name="Main-Class" value="${test.class}" />
|
||||
</manifest>
|
||||
</jar>
|
||||
</target>
|
||||
|
||||
<target name="run-classes">
|
||||
<java classname="${test.class}"
|
||||
fork="true">
|
||||
<classpath>
|
||||
<pathelement path="target/classes"/>
|
||||
<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
<target name="run">
|
||||
<java classname="${test.class}"
|
||||
fork="true">
|
||||
<classpath>
|
||||
<pathelement path="target/${test.jar}"/>
|
||||
<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
<target name="clean">
|
||||
<delete quiet="true" includeemptydirs="true">
|
||||
<fileset dir="target"/>
|
||||
</delete>
|
||||
</target>
|
||||
</project>
|
79
sandbox/ramkumar/helloworld-ws-reference/pom.xml
Normal file
79
sandbox/ramkumar/helloworld-ws-reference/pom.xml
Normal file
|
@ -0,0 +1,79 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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.
|
||||
-->
|
||||
<project>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-sca</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
<artifactId>sample-helloworld-ws-reference</artifactId>
|
||||
<name>Apache Tuscany SCA HelloWorld Web Service Reference Sample</name>
|
||||
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>apache.incubator</id>
|
||||
<url>http://people.apache.org/repo/m2-incubating-repository</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-host-embedded</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-implementation-java-runtime</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-binding-ws-axis2</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>sample-helloworld-ws-service</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.5</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<finalName>${artifactId}</finalName>
|
||||
</build>
|
||||
|
||||
</project>
|
|
@ -0,0 +1,52 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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 helloworld;
|
||||
|
||||
import javax.activation.DataHandler;
|
||||
import javax.activation.FileDataSource;
|
||||
import org.apache.tuscany.sca.host.embedded.SCADomain;
|
||||
import org.apache.axiom.om.OMElement;
|
||||
import org.apache.axiom.om.OMFactory;
|
||||
import org.apache.axiom.om.OMAbstractFactory;
|
||||
import org.apache.axiom.om.OMText;
|
||||
|
||||
/**
|
||||
* This client program shows how to create an SCA runtime, start it,
|
||||
* locate the HelloWorld service and invoke it.
|
||||
*/
|
||||
public class HelloWorldClient {
|
||||
|
||||
public final static void main(String[] args) throws Exception {
|
||||
SCADomain scaDomain = SCADomain.newInstance("helloworldwsclient.composite");
|
||||
HelloWorldService helloWorldService = scaDomain.getService(HelloWorldService.class, "HelloWorldServiceComponent");
|
||||
|
||||
OMFactory fac = OMAbstractFactory.getOMFactory();
|
||||
OMElement imageElement = fac.createOMElement("image", null);
|
||||
// Creating the Data Handler for the file.
|
||||
DataHandler dataHandler = new DataHandler(new FileDataSource("C:/attachedfile.jpg"));
|
||||
//create an OMText node with the above DataHandler and set optimized to true
|
||||
OMText textData = fac.createOMText(dataHandler, true);
|
||||
imageElement.addChild(textData);
|
||||
|
||||
String value = helloWorldService.getGreetings("attachedfile.jpg", imageElement);
|
||||
System.out.println(value);
|
||||
|
||||
scaDomain.close();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,30 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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 helloworld;
|
||||
|
||||
import org.osoa.sca.annotations.Remotable;
|
||||
import org.apache.axiom.om.OMElement;
|
||||
|
||||
/**
|
||||
* The interface for the helloworld service
|
||||
*/
|
||||
@Remotable
|
||||
public interface HelloWorldService {
|
||||
public String getGreetings(String filename, OMElement attachment) throws Exception;
|
||||
}
|
|
@ -0,0 +1,44 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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 helloworld;
|
||||
|
||||
import org.apache.axiom.om.OMElement;
|
||||
|
||||
/**
|
||||
* The HelloWorld service implementation
|
||||
*/
|
||||
public class HelloWorldServiceComponent implements HelloWorldService {
|
||||
|
||||
HelloWorldService helloWorldService;
|
||||
|
||||
public String getGreetings(String filename, OMElement attachment) throws Exception {
|
||||
System.out.println("Called getGreetings");
|
||||
return helloWorldService.getGreetings(filename, attachment);
|
||||
}
|
||||
|
||||
public HelloWorldService getHelloWorldService() {
|
||||
System.out.println("Got Injected helloWorldService");
|
||||
return helloWorldService;
|
||||
}
|
||||
|
||||
public void setHelloWorldService(HelloWorldService helloWorldService) {
|
||||
System.out.println("Injected helloWorldService");
|
||||
this.helloWorldService = helloWorldService;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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.
|
||||
-->
|
||||
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
|
||||
targetNamespace="http://helloworld"
|
||||
xmlns:hw="http://helloworld"
|
||||
name="helloworldwsclient">
|
||||
|
||||
<!-- A component with an embedded reference definition connecting to an external webservice
|
||||
The wsdl interface for the reference is derived from the information specified by the 'wsdlElement'
|
||||
-->
|
||||
<component name="HelloTuscanyServiceComponent">
|
||||
<implementation.java class="helloworld.HelloWorldServiceComponent"/>
|
||||
<reference name="helloWorldService">
|
||||
<binding.ws uri="http://localhost:8085/HelloWorldService"/>
|
||||
<!--<binding.ws wsdlElement="http://helloworld#wsdl.port(HelloWorldService/HelloWorldSoapPort)"/>
|
||||
--></reference>
|
||||
</component>
|
||||
|
||||
<!-- A component with a reference promoted as a composite reference -->
|
||||
<component name="HelloWorldServiceComponent">
|
||||
<implementation.java class="helloworld.HelloWorldServiceComponent"/>
|
||||
</component>
|
||||
|
||||
<reference name="HelloWorldService" promote="HelloWorldServiceComponent/helloWorldService">
|
||||
<!--<interface.java interface="helloworld.HelloWorldService" />
|
||||
<binding.ws wsdlElement="http://helloworld#wsdl.port(HelloWorldService/HelloWorldSoapPort)"/>-->
|
||||
<binding.ws uri="http://localhost:8085/HelloWorldService"/>
|
||||
</reference>
|
||||
|
||||
</composite>
|
|
@ -0,0 +1,30 @@
|
|||
# Licensed to the Apache Software Foundation (ASF) under one
|
||||
# or more contributor license agreements. See the NOTICE file
|
||||
# distributed with this work for additional information
|
||||
# regarding copyright ownership. The ASF licenses this file
|
||||
# to you 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.
|
||||
#
|
||||
# $Rev: 463856 $ $Date: 2006-10-14 03:54:29 +0530 (Sat, 14 Oct 2006) $
|
||||
#
|
||||
|
||||
# Custom logging configuration for Tuscany samples
|
||||
# By default, only INFO level logging is enabled and ALL messages get sent to the console
|
||||
# For more messages from the runtime, uncomment specific settings at the end of this file
|
||||
handlers = java.util.logging.ConsoleHandler
|
||||
java.util.logging.ConsoleHandler.level = ALL
|
||||
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
|
||||
.level=INFO
|
||||
|
||||
# Uncomment the next setting to get all Tuscany messages (this will be a lot)
|
||||
#org.apache.tuscany.level=FINEST
|
|
@ -0,0 +1,92 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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.
|
||||
-->
|
||||
<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
name="helloworld">
|
||||
|
||||
<wsdl:types>
|
||||
<schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema">
|
||||
|
||||
<element name="getGreetings">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="name" type="xsd:string"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="getGreetingsResponse">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="getGreetingsReturn" type="xsd:string"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
</schema>
|
||||
</wsdl:types>
|
||||
|
||||
<wsdl:message name="getGreetingsRequest">
|
||||
<wsdl:part element="tns:getGreetings" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getGreetingsResponse">
|
||||
<wsdl:part element="tns:getGreetingsResponse" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:portType name="HelloWorld">
|
||||
<wsdl:operation name="getGreetings">
|
||||
<wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/>
|
||||
<wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/>
|
||||
</wsdl:operation>
|
||||
</wsdl:portType>
|
||||
|
||||
<wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld">
|
||||
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
|
||||
<wsdl:operation name="getGreetings">
|
||||
<wsdlsoap:operation soapAction=""/>
|
||||
<wsdl:input name="getGreetingsRequest">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getGreetingsResponse">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
</wsdl:binding>
|
||||
|
||||
<wsdl:binding name="HelloWorldSoapJmsBinding" type="tns:HelloWorld">
|
||||
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/jms"/>
|
||||
<wsdl:operation name="getGreetings">
|
||||
<wsdlsoap:operation soapAction=""/>
|
||||
<wsdl:input name="getGreetingsRequest">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getGreetingsResponse">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
</wsdl:binding>
|
||||
|
||||
<wsdl:service name="HelloWorldService">
|
||||
<wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort">
|
||||
<wsdlsoap:address location="http://localhost:8085/HelloWorldService"/>
|
||||
</wsdl:port>
|
||||
</wsdl:service>
|
||||
|
||||
</wsdl:definitions>
|
141
sandbox/ramkumar/helloworld-ws-service/README
Normal file
141
sandbox/ramkumar/helloworld-ws-service/README
Normal file
|
@ -0,0 +1,141 @@
|
|||
Hello World Web Service Service Sample
|
||||
======================================
|
||||
This sample demonstrates an SCA service that uses a web service binding.
|
||||
|
||||
The README in the samples directory (the directory above this) provides
|
||||
general instructions about building and running samples. Take a look there
|
||||
first.
|
||||
|
||||
If you just want to run it to see what happens open a command prompt, navigate
|
||||
to this sample directory and do:
|
||||
|
||||
ant run
|
||||
|
||||
OR if you don't have ant, on Windows do
|
||||
|
||||
java -cp ..\..\lib\tuscany-sca-manifest.jar;target\sample-helloworld-ws-service.jar helloworld.HelloWorldServer
|
||||
|
||||
and on *nix do
|
||||
|
||||
java -cp ../../lib/tuscany-sca-manifest.jar:target/sample-helloworld-ws-service.jar helloworld.HelloWorldServer
|
||||
|
||||
Now the server is started you can use the helloworld-ws-reference sample to
|
||||
exercise it.
|
||||
|
||||
Sample Overview
|
||||
---------------
|
||||
The sample provides a single component that is wired to a service with a
|
||||
web service binding.
|
||||
|
||||
helloworld-ws-service/
|
||||
src/
|
||||
main/
|
||||
java/
|
||||
helloworld/
|
||||
HelloWorldService.java - interface description for
|
||||
HelloWorldServiceComponent
|
||||
HelloWorldImpl.java - component implementation
|
||||
HelloWorldServer.java - starts the SCA Runtime and
|
||||
deploys the helloworldws
|
||||
.composite and then waits for the
|
||||
service to be called via web services
|
||||
resources/
|
||||
wsdl/
|
||||
helloworld.wsdl - the service description that describes
|
||||
the exposed service
|
||||
helloworldws.composite - the SCA assembly for this sample
|
||||
test/
|
||||
java/
|
||||
helloworld/
|
||||
HelloWorldServerTestCase.java - JUnit test case
|
||||
helloworld-ws-service.png - a pictorial representation of the
|
||||
sample .composite file
|
||||
build.xml - the Ant build file
|
||||
pom.xml - the Maven build file
|
||||
|
||||
Building And Running The Sample Using Ant
|
||||
-----------------------------------------
|
||||
With the binary distribution the sample can be built and run using Ant using the
|
||||
following commands
|
||||
|
||||
cd helloworld-ws-service
|
||||
ant compile
|
||||
ant run
|
||||
|
||||
You should see the following output from the run target.
|
||||
|
||||
run:
|
||||
[java] 14-Jan-2008 14:18:47 org.apache.tuscany.sca.http.jetty.JettyServer a
|
||||
ddServletMapping
|
||||
[java] INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
|
||||
[java] HelloWorld server started (press enter to shutdown)
|
||||
|
||||
As this point the SCA service is exposed as a web service by a web server
|
||||
started automatically by the SCA runtime. To stop the server just press
|
||||
enter.
|
||||
|
||||
To exercise the service run up the helloworld-ws-reference sample. Take a look at
|
||||
the README in that sample and you will see you need the following commands
|
||||
|
||||
cd helloworld-ws-reference
|
||||
ant run
|
||||
|
||||
Building And Running The Sample Using Maven
|
||||
-------------------------------------------
|
||||
With either the binary or source distributions the sample can be built and run
|
||||
using Maven as follows. When using Maven you don't need to run the helloworld-
|
||||
ws-reference sample as Maven includes a simple ping test to make sure that the
|
||||
service is available
|
||||
|
||||
cd helloworld-ws-service
|
||||
mvn
|
||||
|
||||
You should see the following output from the test phase.
|
||||
|
||||
-------------------------------------------------------
|
||||
T E S T S
|
||||
-------------------------------------------------------
|
||||
Running helloworld.HelloWorldServerTestCase
|
||||
14-Jan-2008 14:19:57 org.apache.catalina.core.StandardEngine start
|
||||
INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
|
||||
14-Jan-2008 14:19:57 org.apache.catalina.startup.ContextConfig defaultWebConfig
|
||||
INFO: No default web.xml
|
||||
14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/jsp/resources/jsp_2_0.xsd
|
||||
14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_1_
|
||||
1.dtd
|
||||
14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_1_
|
||||
2.dtd
|
||||
14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/jsp/resources/web-jsptaglibrary_2_
|
||||
0.xsd
|
||||
14-Jan-2008 14:19:57 org.apache.catalina.startup.DigesterFactory register
|
||||
WARNING: Could not get url for /javax/servlet/resources/j2ee_web_services_1_1.xs
|
||||
d
|
||||
14-Jan-2008 14:19:57 org.apache.coyote.http11.Http11Protocol init
|
||||
INFO: Initializing Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:19:57 org.apache.coyote.http11.Http11Protocol start
|
||||
INFO: Starting Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:19:57 org.apache.tuscany.sca.http.tomcat.TomcatServer addServletM
|
||||
apping
|
||||
INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
|
||||
14-Jan-2008 14:19:57 org.apache.coyote.http11.Http11Protocol destroy
|
||||
INFO: Stopping Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:19:58 org.apache.catalina.core.StandardEngine start
|
||||
INFO: Starting Servlet Engine: Apache Tomcat/6.0.10
|
||||
14-Jan-2008 14:19:58 org.apache.catalina.startup.ContextConfig defaultWebConfig
|
||||
INFO: No default web.xml
|
||||
14-Jan-2008 14:19:58 org.apache.coyote.http11.Http11Protocol init
|
||||
INFO: Initializing Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:19:58 org.apache.coyote.http11.Http11Protocol start
|
||||
INFO: Starting Coyote HTTP/1.1 on http-8085
|
||||
14-Jan-2008 14:19:58 org.apache.tuscany.sca.http.tomcat.TomcatServer addServletM
|
||||
apping
|
||||
INFO: Added Servlet mapping: http://L3AW203:8085/HelloWorldService
|
||||
14-Jan-2008 14:19:59 org.apache.coyote.http11.Http11Protocol destroy
|
||||
INFO: Stopping Coyote HTTP/1.1 on http-8085
|
||||
Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 6.75 sec
|
||||
|
||||
This shows that the Junit test cases have run successfully.
|
72
sandbox/ramkumar/helloworld-ws-service/build.xml
Normal file
72
sandbox/ramkumar/helloworld-ws-service/build.xml
Normal file
|
@ -0,0 +1,72 @@
|
|||
<!--
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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.
|
||||
-->
|
||||
<project name="helloworld-ws-service" default="compile">
|
||||
<property name="test.class" value="helloworld.HelloWorldServer" />
|
||||
<property name="test.jar" value="sample-helloworld-ws-service.jar" />
|
||||
|
||||
<target name="init">
|
||||
<mkdir dir="target/classes"/>
|
||||
</target>
|
||||
|
||||
<target name="compile" depends="init">
|
||||
<javac srcdir="src/main/java"
|
||||
destdir="target/classes"
|
||||
debug="on"
|
||||
source="1.5"
|
||||
target="1.5">
|
||||
<classpath>
|
||||
<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
|
||||
</classpath>
|
||||
</javac>
|
||||
<copy todir="target/classes">
|
||||
<fileset dir="src/main/resources"/>
|
||||
</copy>
|
||||
<jar destfile="target/${test.jar}" basedir="target/classes">
|
||||
<manifest>
|
||||
<attribute name="Main-Class" value="${test.class}" />
|
||||
</manifest>
|
||||
</jar>
|
||||
</target>
|
||||
|
||||
<target name="run-classes">
|
||||
<java classname="${test.class}"
|
||||
fork="true">
|
||||
<classpath>
|
||||
<pathelement path="target/classes"/>
|
||||
<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
<target name="run">
|
||||
<java classname="${test.class}"
|
||||
fork="true">
|
||||
<classpath>
|
||||
<pathelement path="target/${test.jar}"/>
|
||||
<pathelement location="../../lib/tuscany-sca-manifest.jar"/>
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
<target name="clean">
|
||||
<delete quiet="true" includeemptydirs="true">
|
||||
<fileset dir="target"/>
|
||||
</delete>
|
||||
</target>
|
||||
</project>
|
79
sandbox/ramkumar/helloworld-ws-service/pom.xml
Normal file
79
sandbox/ramkumar/helloworld-ws-service/pom.xml
Normal file
|
@ -0,0 +1,79 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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.
|
||||
-->
|
||||
<project>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-sca</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<relativePath>../../pom.xml</relativePath>
|
||||
</parent>
|
||||
<artifactId>sample-helloworld-ws-service</artifactId>
|
||||
<name>Apache Tuscany SCA HelloWorld Web Service Sample</name>
|
||||
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>apache.incubator</id>
|
||||
<url>http://people.apache.org/repo/m2-incubating-repository</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-host-embedded</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-implementation-java-runtime</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-binding-ws-axis2</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.tuscany.sca</groupId>
|
||||
<artifactId>tuscany-host-tomcat</artifactId>
|
||||
<version>1.4-SNAPSHOT</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.5</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<finalName>${artifactId}</finalName>
|
||||
</build>
|
||||
|
||||
</project>
|
|
@ -0,0 +1,48 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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 helloworld;
|
||||
|
||||
import org.osoa.sca.annotations.Service;
|
||||
import org.apache.axiom.om.OMElement;
|
||||
import org.apache.axiom.om.OMText;
|
||||
import javax.activation.DataHandler;
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
|
||||
/**
|
||||
* This class implements the HelloWorld service.
|
||||
*/
|
||||
@Service(HelloWorldService.class)
|
||||
public class HelloWorldImpl implements HelloWorldService {
|
||||
|
||||
public String getGreetings(String filename, OMElement attachment) throws Exception {
|
||||
|
||||
OMText binaryNode = (OMText) (attachment.getFirstElement()).getFirstOMChild();
|
||||
DataHandler dataHandler = (DataHandler) binaryNode.getDataHandler();
|
||||
|
||||
File file = new File(filename);
|
||||
FileOutputStream fileOutputStream = new FileOutputStream(file);
|
||||
dataHandler.writeTo(fileOutputStream);
|
||||
fileOutputStream.flush();
|
||||
fileOutputStream.close();
|
||||
|
||||
return "File saved succesfully: " + filename;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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 helloworld;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
import org.apache.tuscany.sca.host.embedded.SCADomain;
|
||||
|
||||
/**
|
||||
* This server program shows how to create an SCA runtime, and start it which
|
||||
* activates the helloworld Web service endpoint.
|
||||
*/
|
||||
public class HelloWorldServer {
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
SCADomain scaDomain = SCADomain.newInstance("META-INF/sca-deployables/helloworldws.composite");
|
||||
|
||||
try {
|
||||
System.out.println("HelloWorld server started (press enter to shutdown)");
|
||||
System.in.read();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
scaDomain.close();
|
||||
System.out.println("HelloWorld server stopped");
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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 helloworld;
|
||||
|
||||
import org.osoa.sca.annotations.Remotable;
|
||||
import org.apache.axiom.om.OMElement;
|
||||
|
||||
/**
|
||||
* This is the business interface of the HelloWorld greetings service.
|
||||
*/
|
||||
@Remotable
|
||||
public interface HelloWorldService {
|
||||
|
||||
public String getGreetings(String filename, OMElement attachment) throws Exception;
|
||||
}
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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.
|
||||
-->
|
||||
<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
|
||||
targetNamespace="http://helloworld"
|
||||
xmlns:hw="http://helloworld"
|
||||
name="helloworldws">
|
||||
|
||||
<component name="HelloWorldServiceComponent">
|
||||
<implementation.java class="helloworld.HelloWorldImpl" />
|
||||
<service name="HelloWorldService">
|
||||
<!-- interface.wsdl interface="http://helloworld#wsdl.interface(HelloWorld)" /-->
|
||||
<binding.ws uri="http://localhost:8085/HelloWorldService"/>
|
||||
</service>
|
||||
</component>
|
||||
|
||||
</composite>
|
|
@ -0,0 +1,79 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you 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.
|
||||
-->
|
||||
<wsdl:definitions targetNamespace="http://helloworld" xmlns:tns="http://helloworld" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
name="helloworld">
|
||||
|
||||
<wsdl:types>
|
||||
<schema elementFormDefault="qualified" targetNamespace="http://helloworld" xmlns="http://www.w3.org/2001/XMLSchema">
|
||||
|
||||
<element name="getGreetings">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="name" type="xsd:string"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
<element name="getGreetingsResponse">
|
||||
<complexType>
|
||||
<sequence>
|
||||
<element name="getGreetingsReturn" type="xsd:hexbinary"/>
|
||||
</sequence>
|
||||
</complexType>
|
||||
</element>
|
||||
|
||||
</schema>
|
||||
</wsdl:types>
|
||||
|
||||
<wsdl:message name="getGreetingsRequest">
|
||||
<wsdl:part element="tns:getGreetings" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getGreetingsResponse">
|
||||
<wsdl:part element="tns:getGreetingsResponse" name="parameters"/>
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:portType name="HelloWorld">
|
||||
<wsdl:operation name="getGreetings">
|
||||
<wsdl:input message="tns:getGreetingsRequest" name="getGreetingsRequest"/>
|
||||
<wsdl:output message="tns:getGreetingsResponse" name="getGreetingsResponse"/>
|
||||
</wsdl:operation>
|
||||
</wsdl:portType>
|
||||
|
||||
<wsdl:binding name="HelloWorldSoapBinding" type="tns:HelloWorld">
|
||||
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
|
||||
<wsdl:operation name="getGreetings">
|
||||
<wsdlsoap:operation soapAction=""/>
|
||||
<wsdl:input name="getGreetingsRequest">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getGreetingsResponse">
|
||||
<wsdlsoap:body use="literal"/>
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
</wsdl:binding>
|
||||
|
||||
<wsdl:service name="HelloWorldService">
|
||||
<wsdl:port binding="tns:HelloWorldSoapBinding" name="HelloWorldSoapPort">
|
||||
<wsdlsoap:address location="http://localhost:8085/HelloWorldServiceComponent"/>
|
||||
</wsdl:port>
|
||||
</wsdl:service>
|
||||
|
||||
</wsdl:definitions>
|
|
@ -1 +0,0 @@
|
|||
to play with commit and to check if the username and password works.
|
Loading…
Reference in a new issue