You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jg...@apache.org on 2019/04/25 19:48:34 UTC
[tomee] 01/26: creates adicional structure
This is an automated email from the ASF dual-hosted git repository.
jgallimore pushed a commit to branch tomee-1.7.x
in repository https://gitbox.apache.org/repos/asf/tomee.git
commit 8e5caac668e1719391ab12a6b314182a5a74c78a
Author: Otavio Santana <ot...@gmail.com>
AuthorDate: Fri Feb 22 10:18:07 2019 -0300
creates adicional structure
---
examples/ejb-remote-call/README.md | 39 +++++++++
examples/ejb-remote-call/client.pl | 34 ++++++++
examples/ejb-remote-call/pom.xml | 98 ++++++++++++++++++++++
.../src/main/java/org/superbiz/ws/App.java | 23 +++++
.../src/main/java/org/superbiz/ws/Calculator.java | 26 ++++++
.../java/org/superbiz/ws/DefaultCalculator.java | 20 +++++
.../src/main/webapp/WEB-INF/web.xml | 27 ++++++
7 files changed, 267 insertions(+)
diff --git a/examples/ejb-remote-call/README.md b/examples/ejb-remote-call/README.md
new file mode 100644
index 0000000..379925d
--- /dev/null
+++ b/examples/ejb-remote-call/README.md
@@ -0,0 +1,39 @@
+index-group=Misc
+type=page
+status=published
+title=EJB Remote Call
+~~~~~~
+
+*Help us document this example! Click the blue pencil icon in the upper right to edit this page.*
+
+## Calculator
+
+ package org.superbiz.ws;
+
+ import javax.ejb.Stateless;
+ import javax.jws.WebService;
+
+ @Stateless
+ @WebService(portName = "CalculatorPort",
+ serviceName = "CalculatorWebService",
+ targetNamespace = "http://superbiz.org/wsdl")
+ public class Calculator {
+ public int sum(int add1, int add2) {
+ return add1 + add2;
+ }
+
+ public int multiply(int mul1, int mul2) {
+ return mul1 * mul2;
+ }
+ }
+
+## web.xml
+
+ <web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+ metadata-complete="false"
+ version="2.5">
+
+ </web-app>
+
diff --git a/examples/ejb-remote-call/client.pl b/examples/ejb-remote-call/client.pl
new file mode 100644
index 0000000..be0a632
--- /dev/null
+++ b/examples/ejb-remote-call/client.pl
@@ -0,0 +1,34 @@
+#!/usr/bin/env perl -w
+#============================================================
+# 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.
+#============================================================
+
+use SOAP::Lite;
+
+my $namespace = 'http://superbiz.org/wsdl';
+
+my $service = SOAP::Lite-> uri($namespace)
+ ->proxy('http://localhost:8080/Calculator')
+ ->on_action (sub { return '' } );
+
+my $method = SOAP::Data->name("ns1:multiply")
+ ->attr({'xmlns:ns1' => $namespace});
+
+my @params = (
+ SOAP::Data->name('arg0'=>3),
+ SOAP::Data->name('arg1'=>4));
+
+print $service->call($method=>@params)->result;
diff --git a/examples/ejb-remote-call/pom.xml b/examples/ejb-remote-call/pom.xml
new file mode 100644
index 0000000..f93fc57
--- /dev/null
+++ b/examples/ejb-remote-call/pom.xml
@@ -0,0 +1,98 @@
+<?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.
+-->
+
+<!-- $Rev: 684173 $ $Date: 2008-08-08 20:13:24 -0700 (Fri, 08 Aug 2008) $ -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.superbiz</groupId>
+ <artifactId>ejb-remote-call</artifactId>
+ <packaging>war</packaging>
+ <version>8.0.0-SNAPSHOT</version>
+ <name>OpenEJB :: Web Examples :: EJB Remote Call</name>
+ <properties>
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+ </properties>
+ <repositories>
+ <repository>
+ <id>apache-m2-snapshot</id>
+ <name>Apache Snapshot Repository</name>
+ <url>https://repository.apache.org/content/groups/snapshots</url>
+ </repository>
+ </repositories>
+ <build>
+ <defaultGoal>install</defaultGoal>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.18.1</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>3.1.0</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.5.1</version>
+ <configuration>
+ <source>1.8</source>
+ <target>1.8</target>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.tomee</groupId>
+ <artifactId>javaee-api</artifactId>
+ <version>8.0</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.openejb</groupId>
+ <artifactId>openejb-client</artifactId>
+ <version>4.7.2</version>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.12</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+ <!--
+ This section allows you to configure where to publish libraries for sharing.
+ It is not required and may be deleted. For more information see:
+ http://maven.apache.org/plugins/maven-deploy-plugin/
+ -->
+ <distributionManagement>
+ <repository>
+ <id>localhost</id>
+ <url>file://${basedir}/target/repo/</url>
+ </repository>
+ <snapshotRepository>
+ <id>localhost</id>
+ <url>file://${basedir}/target/snapshot-repo/</url>
+ </snapshotRepository>
+ </distributionManagement>
+</project>
diff --git a/examples/ejb-remote-call/src/main/java/org/superbiz/ws/App.java b/examples/ejb-remote-call/src/main/java/org/superbiz/ws/App.java
new file mode 100644
index 0000000..e3661bf
--- /dev/null
+++ b/examples/ejb-remote-call/src/main/java/org/superbiz/ws/App.java
@@ -0,0 +1,23 @@
+package org.superbiz.ws;
+
+import javax.naming.Context;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+import java.util.Properties;
+
+public class App {
+
+ public static void main(String[] args) throws NamingException {
+ Properties properties = new Properties();
+ properties.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.openejb.client.RemoteInitialContextFactory");
+ properties.put(Context.PROVIDER_URL, "http://localhost:8080/tomee/ejb");
+
+ Context ctx = new InitialContext(properties);
+ Object ref = ctx.lookup("global/ejb_remote_call_war/Calculator!org.superbiz.ws.Calculator");
+
+ Calculator calculator = Calculator.class.cast(ref);
+ System.out.println(calculator.sum(1, 2));
+
+
+ }
+}
diff --git a/examples/ejb-remote-call/src/main/java/org/superbiz/ws/Calculator.java b/examples/ejb-remote-call/src/main/java/org/superbiz/ws/Calculator.java
new file mode 100644
index 0000000..176a856
--- /dev/null
+++ b/examples/ejb-remote-call/src/main/java/org/superbiz/ws/Calculator.java
@@ -0,0 +1,26 @@
+/**
+ * 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
+ * <p/>
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * <p/>
+ * 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.superbiz.ws;
+
+public interface Calculator {
+
+ int sum(int add1, int add2);
+
+ int multiply(int mul1, int mul2);
+
+}
+
diff --git a/examples/ejb-remote-call/src/main/java/org/superbiz/ws/DefaultCalculator.java b/examples/ejb-remote-call/src/main/java/org/superbiz/ws/DefaultCalculator.java
new file mode 100644
index 0000000..49d9e8a
--- /dev/null
+++ b/examples/ejb-remote-call/src/main/java/org/superbiz/ws/DefaultCalculator.java
@@ -0,0 +1,20 @@
+package org.superbiz.ws;
+
+import javax.ejb.Remote;
+import javax.ejb.Stateless;
+
+@Stateless(name = "Calculator", description = "Calculator", mappedName = "Calculator")
+@Remote(Calculator.class)
+public class DefaultCalculator implements Calculator {
+ @Override
+ public int sum(int add1, int add2) {
+ return add1 + add2;
+ }
+
+ @Override
+ public int multiply(int mul1, int mul2) {
+ return mul1 * mul2;
+ }
+
+
+}
diff --git a/examples/ejb-remote-call/src/main/webapp/WEB-INF/web.xml b/examples/ejb-remote-call/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..addbd2d
--- /dev/null
+++ b/examples/ejb-remote-call/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,27 @@
+<?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.
+-->
+
+<!-- $Rev: 634170 $ $Date: 2008-03-05 21:30:10 -0800 (Wed, 05 Mar 2008) $ -->
+
+<web-app xmlns="http://java.sun.com/xml/ns/javaee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+ metadata-complete="false"
+ version="2.5">
+</web-app>