riftsaw SVN: r1085 - in trunk: samples/esb and 69 other directories.
by riftsaw-commits@lists.jboss.org
Author: objectiser
Date: 2010-11-05 10:31:37 -0400 (Fri, 05 Nov 2010)
New Revision: 1085
Added:
trunk/samples/esb/bpel_helloworld_saml/
trunk/samples/esb/bpel_helloworld_saml/bpelContent/
trunk/samples/esb/bpel_helloworld_saml/bpelContent/Hello.xsd
trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorld.bpel
trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorld.wsdl
trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldArtifacts.wsdl
trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldProxy.wsdl
trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldWS.wsdl
trunk/samples/esb/bpel_helloworld_saml/bpelContent/bpel-deploy.xml
trunk/samples/esb/bpel_helloworld_saml/bpelContent/oasis-200401-wss-wssecurity-secext-1.0.xsd
trunk/samples/esb/bpel_helloworld_saml/bpelContent/oasis-200401-wss-wssecurity-utility-1.0.xsd
trunk/samples/esb/bpel_helloworld_saml/bpelContent/xmldsig-core-schema.xsd
trunk/samples/esb/bpel_helloworld_saml/build.xml
trunk/samples/esb/bpel_helloworld_saml/esbcontent/
trunk/samples/esb/bpel_helloworld_saml/esbcontent/HelloWorldWS.wsdl
trunk/samples/esb/bpel_helloworld_saml/esbcontent/META-INF/
trunk/samples/esb/bpel_helloworld_saml/esbcontent/META-INF/jboss-esb.xml
trunk/samples/esb/bpel_helloworld_saml/esbcontent/hello.xsd
trunk/samples/esb/bpel_helloworld_saml/esbcontent/jboss-service.xml
trunk/samples/esb/bpel_helloworld_saml/esbcontent/lib/
trunk/samples/esb/bpel_helloworld_saml/esbcontent/login-config.xml
trunk/samples/esb/bpel_helloworld_saml/esbcontent/picketlink-sts.properties
trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/
trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/saml-roles.properties
trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/saml-users.properties
trunk/samples/esb/bpel_helloworld_saml/esbcontent/sts-client.properties
trunk/samples/esb/bpel_helloworld_saml/jboss-wsse-client.xml
trunk/samples/esb/bpel_helloworld_saml/jbossesb-properties.xml
trunk/samples/esb/bpel_helloworld_saml/jndi.properties
trunk/samples/esb/bpel_helloworld_saml/juddi.properties
trunk/samples/esb/bpel_helloworld_saml/log4j.xml
trunk/samples/esb/bpel_helloworld_saml/login-config-unfiltered.xml
trunk/samples/esb/bpel_helloworld_saml/messages/
trunk/samples/esb/bpel_helloworld_saml/messages/hello_request1.xml
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts.properties
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/MANIFEST.MF
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/pom.properties
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/pom.xml
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/classes/
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/classes/picketlink-sts.xml
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/classes/sts_keystore.jks
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/jboss-web.xml
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/jboss-wsse-server.xml
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/web.xml
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/wsdl/
trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/wsdl/PicketLinkSTS.wsdl
trunk/samples/esb/bpel_helloworld_saml/props/
trunk/samples/esb/bpel_helloworld_saml/props/saml-roles.properties
trunk/samples/esb/bpel_helloworld_saml/props/saml-users.properties
trunk/samples/esb/bpel_helloworld_saml/props/sts-roles.properties
trunk/samples/esb/bpel_helloworld_saml/props/sts-users.properties
trunk/samples/esb/bpel_helloworld_saml/readme.txt
trunk/samples/esb/bpel_helloworld_saml/src/
trunk/samples/esb/bpel_helloworld_saml/src/org/
trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/
trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/
trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/
trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/
trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/
trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/
trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/DisplaySubjectAction.java
trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/HttpGatewayMessageComposer.java
trunk/samples/esb/bpel_helloworld_saml/sts-login-config.xml
trunk/samples/esb/bpel_helloworld_saml/war/
trunk/samples/esb/bpel_helloworld_saml/war/resources/
trunk/samples/esb/bpel_helloworld_saml/war/resources/WEB-INF/
trunk/samples/esb/bpel_helloworld_saml/war/resources/WEB-INF/classes/
trunk/samples/esb/bpel_helloworld_saml/war/resources/WEB-INF/lib/
trunk/samples/esb/bpel_helloworld_saml/war/resources/WEB-INF/web.xml
trunk/samples/esb/bpel_helloworld_saml/war/src/
trunk/samples/esb/bpel_helloworld_saml/war/src/org/
trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/
trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/
trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/bpel/
trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/bpel/samples/
trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/bpel/samples/quickstart/
trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/bpel/samples/quickstart/simple_invoke/
trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/bpel/samples/quickstart/simple_invoke/HelloWorldWS.java
trunk/samples/esb/bpel_helloworld_saml/war/view/
trunk/samples/esb/bpel_helloworld_saml/war/view/index.jsp
trunk/samples/quickstart/order_management/
trunk/samples/quickstart/order_management/.project
trunk/samples/quickstart/order_management/.settings/
trunk/samples/quickstart/order_management/.settings/org.eclipse.wst.common.component
trunk/samples/quickstart/order_management/.settings/org.eclipse.wst.common.project.facet.core.xml
trunk/samples/quickstart/order_management/Ordering-ejb/
trunk/samples/quickstart/order_management/Ordering-ejb/build.xml
trunk/samples/quickstart/order_management/Ordering-ejb/src/
trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/
trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/
trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/MANIFEST.MF
trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/bpel-ds.xml
trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/jboss.xml
trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml
trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml.hsql
trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml.mysql51
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/OrderingBean.java
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/OrderingBeanLocal.java
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/Item.java
trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/Order.java
trunk/samples/quickstart/order_management/Ordering-war/
trunk/samples/quickstart/order_management/Ordering-war/build.xml
trunk/samples/quickstart/order_management/Ordering-war/src/
trunk/samples/quickstart/order_management/Ordering-war/src/conf/
trunk/samples/quickstart/order_management/Ordering-war/src/conf/MANIFEST.MF
trunk/samples/quickstart/order_management/Ordering-war/src/java/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/samples/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/samples/quickstart/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/samples/quickstart/ordering/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/samples/quickstart/ordering/ws/
trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/samples/quickstart/ordering/ws/OrderingService.java
trunk/samples/quickstart/order_management/Ordering-war/web/
trunk/samples/quickstart/order_management/Ordering-war/web/WEB-INF/
trunk/samples/quickstart/order_management/Ordering-war/web/WEB-INF/web.xml
trunk/samples/quickstart/order_management/Ordering-war/web/index.jsp
trunk/samples/quickstart/order_management/bpelContent/
trunk/samples/quickstart/order_management/bpelContent/Ordering.bpel
trunk/samples/quickstart/order_management/bpelContent/OrderingArtifacts.wsdl
trunk/samples/quickstart/order_management/bpelContent/OrderingService.wsdl
trunk/samples/quickstart/order_management/bpelContent/bpel-deploy.xml
trunk/samples/quickstart/order_management/build.xml
trunk/samples/quickstart/order_management/messages/
trunk/samples/quickstart/order_management/messages/approve.xml
trunk/samples/quickstart/order_management/messages/order.xml
trunk/samples/quickstart/order_management/readme.txt
trunk/samples/quickstart/order_management/sql/
trunk/samples/quickstart/order_management/sql/items.sql
Modified:
trunk/distribution/src/main/assembly/bin.xml
Log:
RIFTSAW-314 and RIFTSAW-315 - add new examples.
Modified: trunk/distribution/src/main/assembly/bin.xml
===================================================================
--- trunk/distribution/src/main/assembly/bin.xml 2010-11-05 08:31:16 UTC (rev 1084)
+++ trunk/distribution/src/main/assembly/bin.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -66,6 +66,7 @@
<includes>
<include>common/**</include>
<include>esb/bpel_helloworld/**</include>
+ <include>esb/bpel_helloworld_saml/**</include>
<include>esb/bpel_loan_fault/**</include>
<include>esb/invoke_esb_ebws/**</include>
<include>esb/simple_esb_proxy_invoke/**</include>
@@ -77,6 +78,7 @@
<include>quickstart/hello_world_header_wsdl/**</include>
<include>quickstart/loan_approval/**</include>
<include>quickstart/math/**</include>
+ <include>quickstart/order_management/**</include>
<include>quickstart/salutations/**</include>
<include>quickstart/say_hello/**</include>
<include>quickstart/secure_invoke/**</include>
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/Hello.xsd
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/Hello.xsd (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/Hello.xsd 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="http://simple_invoke/helloworld" version="1.0" xmlns:tns="http://simple_invoke/helloworld" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="sayHello" type="tns:sayHello"/>
+ <xs:element name="sayHelloResponse" type="tns:sayHelloResponse"/>
+ <xs:complexType name="sayHello">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="toWhom" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="sayHelloResponse">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="return" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorld.bpel
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorld.bpel (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorld.bpel 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,96 @@
+<!--
+ ~ 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.
+ -->
+<process name="HelloWorldSecurityHeaderCopy"
+ targetNamespace="http://www.jboss.org/bpel/examples"
+ xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:tns="http://www.jboss.org/bpel/examples"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:intf="http://www.jboss.org/bpel/examples/wsdl"
+ queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
+ expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
+ xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..."
+ xmlns:si="http://simple_invoke/helloworld"
+ xmlns:ea="http://www.jboss.org/bpel/examplesArtifacts">
+
+ <bpel:import namespace="http://simple_invoke/helloworld" location="HelloWorldProxy.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
+ <bpel:import namespace="http://simple_invoke/helloworld" location="HelloWorld.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
+ <bpel:import namespace="http://www.jboss.org/bpel/examplesArtifacts" location="HelloWorldArtifacts.wsdl" importType="http://schemas.xmlsoap.org/wsdl/"></bpel:import>
+
+ <partnerLinks>
+
+ <bpel:partnerLink name="helloWorldPartnerLink" partnerLinkType="ea:HelloWorldLT" myRole="HelloWorldRole"></bpel:partnerLink>
+
+ <bpel:partnerLink name="externalPartnerLink" partnerLinkType="si:externalPLT" partnerRole="externalRole"></bpel:partnerLink>
+ </partnerLinks>
+
+ <variables>
+ <variable name="inputVar" messageType="si:HelloWorld_sayHi">
+ </variable>
+ <variable name="outputVar" messageType="si:HelloWorld_sayHiResponse"/>
+
+
+
+
+ <bpel:variable name="externalVar" messageType="si:HelloWorld_sayHello">
+ </bpel:variable>
+ <bpel:variable name="externalRespVar" messageType="si:HelloWorld_sayHelloResponse"></bpel:variable>
+ </variables>
+
+ <sequence>
+ <receive
+ name="start"
+ createInstance="yes" partnerLink="helloWorldPartnerLink" operation="sayHi" portType="si:HelloHeaderWSPortType" variable="inputVar"/>
+
+
+ <bpel:assign validate="no" name="AssignForInvoke">
+
+
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal><sayHello><toWhom></toWhom></sayHello></bpel:literal>
+ </bpel:from>
+ <bpel:to variable="externalVar" part="sayHello"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from part="Security" variable="inputVar"></bpel:from>
+ <bpel:to part="Security" variable="externalVar"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from part="sayHello" variable="inputVar"></bpel:from>
+ <bpel:to part="sayHello" variable="externalVar"></bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+ <bpel:invoke name="InvokeWithSecurityHeader" partnerLink="externalPartnerLink" operation="sayHello" portType="si:HelloWorld" inputVariable="externalVar" outputVariable="externalRespVar"></bpel:invoke>
+ <bpel:assign validate="no" name="AssignForReply">
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal><sayHelloResponse><return></return></sayHelloResponse></bpel:literal>
+ </bpel:from>
+ <bpel:to variable="outputVar" part="sayHelloResponse"></bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>concat($externalRespVar.sayHelloResponse/return,' and BPEL')</bpel:from>
+ <bpel:to part="sayHelloResponse" variable="outputVar"></bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+ <reply name="end"
+ partnerLink="helloWorldPartnerLink" operation="sayHi" portType="si:HelloHeaderWSPortType" variable="outputVar"/>
+ </sequence>
+</process>
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorld.wsdl
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorld.wsdl (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorld.wsdl 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,110 @@
+<?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://simple_invoke/helloworld"
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:tns="http://simple_invoke/helloworld"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+ xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..."
+ xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
+ xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..."
+ xmlns:wsaws="http://www.w3.org/2005/08/addressing"
+ xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+
+
+ <wsdl:types>
+ <xs:schema targetNamespace="http://simple_invoke/helloworld" version="1.0" xmlns:tns="http://simple_invoke/helloworld" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="sayHello" type="tns:sayHello"/>
+ <xs:element name="sayHelloResponse" type="tns:sayHelloResponse"/>
+ <xs:complexType name="sayHello">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="toWhom" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="sayHelloResponse">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="return" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema">
+ <import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." schemaLocation="oasis-200401-wss-wssecurity-secext-1.0.xsd"/>
+ </xsd:schema>
+</wsdl:types>
+
+ <message name="HelloWorld_sayHi">
+ <part name="sayHello" element="tns:sayHello" />
+ <part name="Security" element="wsse:Security" />
+<!-- <part name="Assertion" element="saml:Assertion" xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"/> -->
+ </message>
+ <message name="HelloWorld_sayHiResponse">
+ <part name="sayHelloResponse" element="tns:sayHelloResponse" />
+ </message>
+ <portType name="HelloHeaderWSPortType">
+ <operation name="sayHi">
+ <input message="tns:HelloWorld_sayHi"></input>
+ <output message="tns:HelloWorld_sayHiResponse"></output>
+ </operation>
+ </portType>
+ <wsdl:binding name="HelloHeaderWSSoapBinding" type="tns:HelloHeaderWSPortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="sayHi">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input>
+ <soap:body use="literal" parts="sayHello" />
+ <soap:header message="tns:HelloWorld_sayHi"
+ part="Security" use="literal"/>
+ </wsdl:input>
+ <wsdl:output>
+ <soap:body use="literal" parts="sayHelloResponse" />
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="HelloHeaderWSService">
+ <wsdl:port name="HelloHeaderWSPort" binding="tns:HelloHeaderWSSoapBinding">
+ <soap:address location="http://localhost:8080/Quickstart_bpel_security_header_copyWS"/>
+ </wsdl:port>
+ </wsdl:service>
+
+ <plnk:partnerLinkType name="HelloPartnerLinkType">
+ <plnk:role name="me" portType="tns:HelloHeaderWSPortType"/>
+ <plnk:role name="you" portType="tns:HelloHeaderWSPortType"/>
+ </plnk:partnerLinkType>
+
+ <!-- <wsp:Policy xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..." wsu:Id="UsernameTokenSecurityPolicyPasswordOptional">
+ <wsp:ExactlyOne>
+ <wsp:All>
+ <wsse:SecurityToken xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." wsp:Usage="wsp:Required">
+ <wsse:TokenType>wsse:UserNameToken</wsse:TokenType>
+ <Claims>
+ <SubjectName MatchType="wsse:Exact"/>
+ <UsePassword wsp:Usage="wsp:Optional"/>
+ </Claims>
+ </wsse:SecurityToken>
+ </wsp:All>
+ </wsp:ExactlyOne>
+ </wsp:Policy>
+ -->
+
+</wsdl:definitions>
+
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldArtifacts.wsdl
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldArtifacts.wsdl (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldArtifacts.wsdl 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" xmlns:tns="http://www.jboss.org/bpel/examplesArtifacts" xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" xmlns:wsdl="http://simple_invoke/helloworld" name="HelloWorldArtifacts" targetNamespace="http://www.jboss.org/bpel/examplesArtifacts">
+ <plnk:partnerLinkType name="HelloWorldLT">
+ <plnk:role name="HelloWorldRole" portType="wsdl:HelloHeaderWSPortType"/>
+ </plnk:partnerLinkType>
+ <import location="HelloWorld.wsdl" namespace="http://simple_invoke/helloworld"/>
+</definitions>
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldProxy.wsdl
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldProxy.wsdl (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldProxy.wsdl 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<definitions name="HelloWorldWSService"
+targetNamespace="http://simple_invoke/helloworld"
+xmlns="http://schemas.xmlsoap.org/wsdl/"
+xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+xmlns:tns="http://simple_invoke/helloworld"
+xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..."
+xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
+xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..."
+xmlns:wsaws="http://www.w3.org/2005/08/addressing"
+xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+
+ <types>
+ <xs:schema targetNamespace="http://simple_invoke/helloworld" version="1.0" xmlns:tns="http://simple_invoke/helloworld" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="sayHello" type="tns:sayHello"/>
+ <xs:element name="sayHelloResponse" type="tns:sayHelloResponse"/>
+ <xs:complexType name="sayHello">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="toWhom" type="xs:string"/>
+ </xs:sequence>
+
+ </xs:complexType>
+ <xs:complexType name="sayHelloResponse">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="return" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema">
+ <import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." schemaLocation="oasis-200401-wss-wssecurity-secext-1.0.xsd"/>
+ </xsd:schema>
+ </types>
+ <message name="HelloWorld_sayHelloResponse">
+ <part element="tns:sayHelloResponse" name="sayHelloResponse">
+ </part>
+ </message>
+ <message name="HelloWorld_sayHello">
+ <part element="tns:sayHello" name="sayHello">
+ </part>
+ <part name="Security" element="wsse:Security" />
+ </message>
+ <portType name="HelloWorld">
+ <operation name="sayHello" parameterOrder="sayHello">
+
+ <input message="tns:HelloWorld_sayHello">
+ </input>
+ <output message="tns:HelloWorld_sayHelloResponse">
+ </output>
+ </operation>
+ </portType>
+ <binding name="HelloWorldBinding" type="tns:HelloWorld">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="sayHello">
+
+ <soap:operation soapAction=""/>
+ <input>
+ <soap:body use="literal" parts="sayHello"/>
+ <soap:header message="tns:HelloWorld_sayHello" part="Security" use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ </binding>
+
+ <service name="HelloWorldWSService">
+ <port binding="tns:HelloWorldBinding" name="HelloWorldPort">
+ <soap:address location="http://127.0.0.1:8080/Quickstart_bpel_hello_world_saml/http/BPELESBSecuri..."/>
+ </port>
+ </service>
+
+ <plnk:partnerLinkType name="externalPLT">
+ <plnk:role name="externalRole" portType="tns:HelloWorld"/>
+ </plnk:partnerLinkType>
+
+</definitions>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldWS.wsdl
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldWS.wsdl (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/HelloWorldWS.wsdl 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<definitions name="HelloWorldWSService"
+targetNamespace="http://simple_invoke/helloworld"
+xmlns="http://schemas.xmlsoap.org/wsdl/"
+xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+xmlns:tns="http://simple_invoke/helloworld"
+xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..."
+xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
+xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..."
+xmlns:wsaws="http://www.w3.org/2005/08/addressing"
+xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+
+ <types>
+ <xs:schema targetNamespace="http://simple_invoke/helloworld" version="1.0" xmlns:tns="http://simple_invoke/helloworld" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="sayHello" type="tns:sayHello"/>
+ <xs:element name="sayHelloResponse" type="tns:sayHelloResponse"/>
+ <xs:complexType name="sayHello">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="toWhom" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="sayHelloResponse">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="return" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema">
+ <import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." schemaLocation="oasis-200401-wss-wssecurity-secext-1.0.xsd"/>
+ </xsd:schema>
+</types>
+
+ <message name="HelloWorld_sayHello">
+ <part element="tns:sayHello" name="sayHello"></part>
+ <part name="Security" element="wsse:Security" />
+ </message>
+ <message name="HelloWorld_sayHelloResponse">
+ <part element="tns:sayHelloResponse" name="sayHelloResponse"></part>
+ </message>
+ <portType name="HelloWorld">
+ <operation name="sayHello" parameterOrder="sayHello">
+ <input message="tns:HelloWorld_sayHello"></input>
+ <output message="tns:HelloWorld_sayHelloResponse"></output>
+ </operation>
+ </portType>
+ <binding name="HelloWorldBinding" type="tns:HelloWorld">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="sayHello">
+ <soap:operation soapAction=""/>
+ <input>
+ <soap:body use="literal" parts="sayHello"/>
+ <soap:header message="tns:HelloWorld_sayHello" part="Security" use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ </binding>
+ <service name="HelloWorldWSService">
+ <port binding="tns:HelloWorldBinding" name="HelloWorldPort">
+ <soap:address location="http://127.0.0.1:8080/Quickstart_bpel_security_header_copy/HelloWorldWS"/>
+ </port>
+ </service>
+ <plnk:partnerLinkType name="theExternalService_PartnerLinkType">
+ <plnk:role name="callingTheExternalService" portType="tns:HelloWorld"/>
+ </plnk:partnerLinkType>
+</definitions>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/bpel-deploy.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/bpel-deploy.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/bpel-deploy.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deploy xmlns="http://www.apache.org/ode/schemas/dd/2007/03" xmlns:examples="http://www.jboss.org/bpel/examples" xmlns:helloworld="http://simple_invoke/helloworld">
+ <process name="examples:HelloWorldSecurityHeaderCopy">
+ <active>true</active>
+ <retired>false</retired>
+ <process-events generate="all"/>
+ <provide partnerLink="helloWorldPartnerLink">
+ <service name="helloworld:HelloHeaderWSService" port="HelloHeaderWSPort"/>
+ </provide>
+ <invoke partnerLink="externalPartnerLink">
+ <service name="helloworld:HelloWorldWSService" port="HelloWorldPort"/>
+ </invoke>
+ </process>
+</deploy>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/oasis-200401-wss-wssecurity-secext-1.0.xsd
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/oasis-200401-wss-wssecurity-secext-1.0.xsd (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/oasis-200401-wss-wssecurity-secext-1.0.xsd 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,197 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
+OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
+Copyright © OASIS Open 2002-2004. All Rights Reserved.
+This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself does not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
+The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
+This document and the information contained herein is provided on an “AS IS” basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+-->
+<xsd:schema targetNamespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..." xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" attributeFormDefault="unqualified" blockDefault="#all" version="0.2">
+ <xsd:import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..." schemaLocation="oasis-200401-wss-wssecurity-utility-1.0.xsd"/>
+<!--
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+-->
+ <xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd"/>
+ <xsd:complexType name="AttributedString">
+ <xsd:annotation>
+ <xsd:documentation>This type represents an element with arbitrary attributes.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute ref="wsu:Id"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:complexType name="PasswordString">
+ <xsd:annotation>
+ <xsd:documentation>This type is used for password elements per Section 4.1.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="wsse:AttributedString">
+ <xsd:attribute name="Type" type="xsd:anyURI"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:complexType name="EncodedString">
+ <xsd:annotation>
+ <xsd:documentation>This type is used for elements containing stringified binary data.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="wsse:AttributedString">
+ <xsd:attribute name="EncodingType" type="xsd:anyURI"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:complexType name="UsernameTokenType">
+ <xsd:annotation>
+ <xsd:documentation>This type represents a username token per Section 4.1</xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element name="Username" type="wsse:AttributedString"/>
+ <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute ref="wsu:Id"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+ <xsd:complexType name="BinarySecurityTokenType">
+ <xsd:annotation>
+ <xsd:documentation>A security token that is encoded in binary</xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="wsse:EncodedString">
+ <xsd:attribute name="ValueType" type="xsd:anyURI"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:complexType name="KeyIdentifierType">
+ <xsd:annotation>
+ <xsd:documentation>A security token key identifier</xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="wsse:EncodedString">
+ <xsd:attribute name="ValueType" type="xsd:anyURI"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:simpleType name="tUsage">
+ <xsd:annotation>
+ <xsd:documentation>Typedef to allow a list of usages (as URIs).</xsd:documentation>
+ </xsd:annotation>
+ <xsd:list itemType="xsd:anyURI"/>
+ </xsd:simpleType>
+ <xsd:attribute name="Usage" type="tUsage">
+ <xsd:annotation>
+ <xsd:documentation>This global attribute is used to indicate the usage of a referenced or indicated token within the containing context</xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:complexType name="ReferenceType">
+ <xsd:annotation>
+ <xsd:documentation>This type represents a reference to an external security token.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute name="URI" type="xsd:anyURI"/>
+ <xsd:attribute name="ValueType" type="xsd:anyURI"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+ <xsd:complexType name="EmbeddedType">
+ <xsd:annotation>
+ <xsd:documentation>This type represents a reference to an embedded security token.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:any processContents="lax"/>
+ </xsd:choice>
+ <xsd:attribute name="ValueType" type="xsd:anyURI"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+ <xsd:complexType name="SecurityTokenReferenceType">
+ <xsd:annotation>
+ <xsd:documentation>This type is used reference a security token.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:any processContents="lax"/>
+ </xsd:choice>
+ <xsd:attribute ref="wsu:Id"/>
+ <xsd:attribute ref="wsse:Usage"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+ <xsd:complexType name="SecurityHeaderType">
+ <xsd:annotation>
+ <xsd:documentation>This complexType defines header block to use for security-relevant data directed at a specific SOAP actor.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>The use of "any" is to allow extensibility and different forms of security data.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:any>
+ </xsd:sequence>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+ <xsd:complexType name="TransformationParametersType">
+ <xsd:annotation>
+ <xsd:documentation>This complexType defines a container for elements to be specified from any namespace as properties/parameters of a DSIG transformation.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>The use of "any" is to allow extensibility from any namespace.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:any>
+ </xsd:sequence>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+ <xsd:element name="UsernameToken" type="wsse:UsernameTokenType">
+ <xsd:annotation>
+ <xsd:documentation>This element defines the wsse:UsernameToken element per Section 4.1.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="BinarySecurityToken" type="wsse:BinarySecurityTokenType">
+ <xsd:annotation>
+ <xsd:documentation>This element defines the wsse:BinarySecurityToken element per Section 4.2.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="Reference" type="wsse:ReferenceType">
+ <xsd:annotation>
+ <xsd:documentation>This element defines a security token reference</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="Embedded" type="wsse:EmbeddedType">
+ <xsd:annotation>
+ <xsd:documentation>This element defines a security token embedded reference</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="KeyIdentifier" type="wsse:KeyIdentifierType">
+ <xsd:annotation>
+ <xsd:documentation>This element defines a key identifier reference</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="SecurityTokenReference" type="wsse:SecurityTokenReferenceType">
+ <xsd:annotation>
+ <xsd:documentation>This element defines the wsse:SecurityTokenReference per Section 4.3.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="Security" type="wsse:SecurityHeaderType">
+ <xsd:annotation>
+ <xsd:documentation>This element defines the wsse:Security SOAP header element per Section 4.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="TransformationParameters" type="wsse:TransformationParametersType">
+ <xsd:annotation>
+ <xsd:documentation>This element contains properties for transformations from any namespace, including DSIG.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="Password" type="wsse:PasswordString"/>
+ <xsd:element name="Nonce" type="wsse:EncodedString"/>
+ <xsd:simpleType name="FaultcodeEnum">
+ <xsd:restriction base="xsd:QName">
+ <xsd:enumeration value="wsse:UnsupportedSecurityToken"/>
+ <xsd:enumeration value="wsse:UnsupportedAlgorithm"/>
+ <xsd:enumeration value="wsse:InvalidSecurity"/>
+ <xsd:enumeration value="wsse:InvalidSecurityToken"/>
+ <xsd:enumeration value="wsse:FailedAuthentication"/>
+ <xsd:enumeration value="wsse:FailedCheck"/>
+ <xsd:enumeration value="wsse:SecurityTokenUnavailable"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+</xsd:schema>
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/oasis-200401-wss-wssecurity-utility-1.0.xsd
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/oasis-200401-wss-wssecurity-utility-1.0.xsd (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/oasis-200401-wss-wssecurity-utility-1.0.xsd 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
+OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
+Copyright © OASIS Open 2002-2004. All Rights Reserved.
+This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself does not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.
+The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.
+This document and the information contained herein is provided on an “AS IS” basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+-->
+<xsd:schema targetNamespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..." xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..." xmlns="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..." elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.1">
+ <!-- // Fault Codes /////////////////////////////////////////// -->
+ <xsd:simpleType name="tTimestampFault">
+ <xsd:annotation>
+ <xsd:documentation>
+This type defines the fault code value for Timestamp message expiration.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:QName">
+ <xsd:enumeration value="wsu:MessageExpired"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <!-- // Global attributes //////////////////////////////////// -->
+ <xsd:attribute name="Id" type="xsd:ID">
+ <xsd:annotation>
+ <xsd:documentation>
+This global attribute supports annotating arbitrary elements with an ID.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:attribute>
+ <xsd:attributeGroup name="commonAtts">
+ <xsd:annotation>
+ <xsd:documentation>
+Convenience attribute group used to simplify this schema.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:attribute ref="wsu:Id" use="optional"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:attributeGroup>
+ <!-- // Utility types //////////////////////////////////////// -->
+ <xsd:complexType name="AttributedDateTime">
+ <xsd:annotation>
+ <xsd:documentation>
+This type is for elements whose [children] is a psuedo-dateTime and can have arbitrary attributes.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attributeGroup ref="wsu:commonAtts"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:complexType name="AttributedURI">
+ <xsd:annotation>
+ <xsd:documentation>
+This type is for elements whose [children] is an anyURI and can have arbitrary attributes.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:anyURI">
+ <xsd:attributeGroup ref="wsu:commonAtts"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <!-- // Timestamp header components /////////////////////////// -->
+ <xsd:complexType name="TimestampType">
+ <xsd:annotation>
+ <xsd:documentation>
+This complex type ties together the timestamp related elements into a composite type.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element ref="wsu:Created" minOccurs="0"/>
+ <xsd:element ref="wsu:Expires" minOccurs="0"/>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:any namespace="##other" processContents="lax"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attributeGroup ref="wsu:commonAtts"/>
+ </xsd:complexType>
+ <xsd:element name="Timestamp" type="wsu:TimestampType">
+ <xsd:annotation>
+ <xsd:documentation>
+This element allows Timestamps to be applied anywhere element wildcards are present,
+including as a SOAP header.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <!-- global element decls to allow individual elements to appear anywhere -->
+ <xsd:element name="Expires" type="wsu:AttributedDateTime">
+ <xsd:annotation>
+ <xsd:documentation>
+This element allows an expiration time to be applied anywhere element wildcards are present.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="Created" type="wsu:AttributedDateTime">
+ <xsd:annotation>
+ <xsd:documentation>
+This element allows a creation time to be applied anywhere element wildcards are present.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+</xsd:schema>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/bpelContent/xmldsig-core-schema.xsd
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/bpelContent/xmldsig-core-schema.xsd (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/bpelContent/xmldsig-core-schema.xsd 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,301 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Schema for XML Signatures
+ http://www.w3.org/2000/09/xmldsig#
+ $Revision: 1.1 $ on $Date: 2002/02/08 20:32:26 $ by $Author: reagle $
+
+ Copyright 2001 The Internet Society and W3C (Massachusetts Institute
+ of Technology, Institut National de Recherche en Informatique et en
+ Automatique, Keio University). All Rights Reserved.
+ http://www.w3.org/Consortium/Legal/
+
+ This document is governed by the W3C Software License [1] as described
+ in the FAQ [2].
+
+ [1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
+ [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
+-->
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" targetNamespace="http://www.w3.org/2000/09/xmldsig#" version="0.1" elementFormDefault="qualified">
+
+<!-- Basic Types Defined for Signatures -->
+
+<simpleType name="CryptoBinary">
+ <restriction base="base64Binary">
+ </restriction>
+</simpleType>
+
+<!-- Start Signature -->
+
+<element name="Signature" type="ds:SignatureType"/>
+<complexType name="SignatureType">
+ <sequence>
+ <element ref="ds:SignedInfo"/>
+ <element ref="ds:SignatureValue"/>
+ <element ref="ds:KeyInfo" minOccurs="0"/>
+ <element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+</complexType>
+
+ <element name="SignatureValue" type="ds:SignatureValueType"/>
+ <complexType name="SignatureValueType">
+ <simpleContent>
+ <extension base="base64Binary">
+ <attribute name="Id" type="ID" use="optional"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+
+<!-- Start SignedInfo -->
+
+<element name="SignedInfo" type="ds:SignedInfoType"/>
+<complexType name="SignedInfoType">
+ <sequence>
+ <element ref="ds:CanonicalizationMethod"/>
+ <element ref="ds:SignatureMethod"/>
+ <element ref="ds:Reference" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+</complexType>
+
+ <element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
+ <complexType name="CanonicalizationMethodType" mixed="true">
+ <sequence>
+ <any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
+ <!-- (0,unbounded) elements from (1,1) namespace -->
+ </sequence>
+ <attribute name="Algorithm" type="anyURI" use="required"/>
+ </complexType>
+
+ <element name="SignatureMethod" type="ds:SignatureMethodType"/>
+ <complexType name="SignatureMethodType" mixed="true">
+ <sequence>
+ <element name="HMACOutputLength" minOccurs="0" type="ds:HMACOutputLengthType"/>
+ <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+ <!-- (0,unbounded) elements from (1,1) external namespace -->
+ </sequence>
+ <attribute name="Algorithm" type="anyURI" use="required"/>
+ </complexType>
+
+<!-- Start Reference -->
+
+<element name="Reference" type="ds:ReferenceType"/>
+<complexType name="ReferenceType">
+ <sequence>
+ <element ref="ds:Transforms" minOccurs="0"/>
+ <element ref="ds:DigestMethod"/>
+ <element ref="ds:DigestValue"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+ <attribute name="URI" type="anyURI" use="optional"/>
+ <attribute name="Type" type="anyURI" use="optional"/>
+</complexType>
+
+ <element name="Transforms" type="ds:TransformsType"/>
+ <complexType name="TransformsType">
+ <sequence>
+ <element ref="ds:Transform" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+
+ <element name="Transform" type="ds:TransformType"/>
+ <complexType name="TransformType" mixed="true">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <any namespace="##other" processContents="lax"/>
+ <!-- (1,1) elements from (0,unbounded) namespaces -->
+ <element name="XPath" type="string"/>
+ </choice>
+ <attribute name="Algorithm" type="anyURI" use="required"/>
+ </complexType>
+
+<!-- End Reference -->
+
+<element name="DigestMethod" type="ds:DigestMethodType"/>
+<complexType name="DigestMethodType" mixed="true">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Algorithm" type="anyURI" use="required"/>
+</complexType>
+
+<element name="DigestValue" type="ds:DigestValueType"/>
+<simpleType name="DigestValueType">
+ <restriction base="base64Binary"/>
+</simpleType>
+
+<!-- End SignedInfo -->
+
+<!-- Start KeyInfo -->
+
+<element name="KeyInfo" type="ds:KeyInfoType"/>
+<complexType name="KeyInfoType" mixed="true">
+ <choice maxOccurs="unbounded">
+ <element ref="ds:KeyName"/>
+ <element ref="ds:KeyValue"/>
+ <element ref="ds:RetrievalMethod"/>
+ <element ref="ds:X509Data"/>
+ <element ref="ds:PGPData"/>
+ <element ref="ds:SPKIData"/>
+ <element ref="ds:MgmtData"/>
+ <any processContents="lax" namespace="##other"/>
+ <!-- (1,1) elements from (0,unbounded) namespaces -->
+ </choice>
+ <attribute name="Id" type="ID" use="optional"/>
+</complexType>
+
+ <element name="KeyName" type="string"/>
+ <element name="MgmtData" type="string"/>
+
+ <element name="KeyValue" type="ds:KeyValueType"/>
+ <complexType name="KeyValueType" mixed="true">
+ <choice>
+ <element ref="ds:DSAKeyValue"/>
+ <element ref="ds:RSAKeyValue"/>
+ <any namespace="##other" processContents="lax"/>
+ </choice>
+ </complexType>
+
+ <element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
+ <complexType name="RetrievalMethodType">
+ <sequence>
+ <element ref="ds:Transforms" minOccurs="0"/>
+ </sequence>
+ <attribute name="URI" type="anyURI"/>
+ <attribute name="Type" type="anyURI" use="optional"/>
+ </complexType>
+
+<!-- Start X509Data -->
+
+<element name="X509Data" type="ds:X509DataType"/>
+<complexType name="X509DataType">
+ <sequence maxOccurs="unbounded">
+ <choice>
+ <element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
+ <element name="X509SKI" type="base64Binary"/>
+ <element name="X509SubjectName" type="string"/>
+ <element name="X509Certificate" type="base64Binary"/>
+ <element name="X509CRL" type="base64Binary"/>
+ <any namespace="##other" processContents="lax"/>
+ </choice>
+ </sequence>
+</complexType>
+
+<complexType name="X509IssuerSerialType">
+ <sequence>
+ <element name="X509IssuerName" type="string"/>
+ <element name="X509SerialNumber" type="integer"/>
+ </sequence>
+</complexType>
+
+<!-- End X509Data -->
+
+<!-- Begin PGPData -->
+
+<element name="PGPData" type="ds:PGPDataType"/>
+<complexType name="PGPDataType">
+ <choice>
+ <sequence>
+ <element name="PGPKeyID" type="base64Binary"/>
+ <element name="PGPKeyPacket" type="base64Binary" minOccurs="0"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <sequence>
+ <element name="PGPKeyPacket" type="base64Binary"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </choice>
+</complexType>
+
+<!-- End PGPData -->
+
+<!-- Begin SPKIData -->
+
+<element name="SPKIData" type="ds:SPKIDataType"/>
+<complexType name="SPKIDataType">
+ <sequence maxOccurs="unbounded">
+ <element name="SPKISexp" type="base64Binary"/>
+ <any namespace="##other" processContents="lax" minOccurs="0"/>
+ </sequence>
+</complexType>
+
+<!-- End SPKIData -->
+
+<!-- End KeyInfo -->
+
+<!-- Start Object (Manifest, SignatureProperty) -->
+
+<element name="Object" type="ds:ObjectType"/>
+<complexType name="ObjectType" mixed="true">
+ <sequence minOccurs="0" maxOccurs="unbounded">
+ <any namespace="##any" processContents="lax"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+ <attribute name="MimeType" type="string" use="optional"/> <!-- add a grep facet -->
+ <attribute name="Encoding" type="anyURI" use="optional"/>
+</complexType>
+
+<element name="Manifest" type="ds:ManifestType"/>
+<complexType name="ManifestType">
+ <sequence>
+ <element ref="ds:Reference" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+</complexType>
+
+<element name="SignatureProperties" type="ds:SignaturePropertiesType"/>
+<complexType name="SignaturePropertiesType">
+ <sequence>
+ <element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+</complexType>
+
+ <element name="SignatureProperty" type="ds:SignaturePropertyType"/>
+ <complexType name="SignaturePropertyType" mixed="true">
+ <choice maxOccurs="unbounded">
+ <any namespace="##other" processContents="lax"/>
+ <!-- (1,1) elements from (1,unbounded) namespaces -->
+ </choice>
+ <attribute name="Target" type="anyURI" use="required"/>
+ <attribute name="Id" type="ID" use="optional"/>
+ </complexType>
+
+<!-- End Object (Manifest, SignatureProperty) -->
+
+<!-- Start Algorithm Parameters -->
+
+<simpleType name="HMACOutputLengthType">
+ <restriction base="integer"/>
+</simpleType>
+
+<!-- Start KeyValue Element-types -->
+
+<element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
+<complexType name="DSAKeyValueType">
+ <sequence>
+ <sequence minOccurs="0">
+ <element name="P" type="ds:CryptoBinary"/>
+ <element name="Q" type="ds:CryptoBinary"/>
+ </sequence>
+ <element name="G" type="ds:CryptoBinary" minOccurs="0"/>
+ <element name="Y" type="ds:CryptoBinary"/>
+ <element name="J" type="ds:CryptoBinary" minOccurs="0"/>
+ <sequence minOccurs="0">
+ <element name="Seed" type="ds:CryptoBinary"/>
+ <element name="PgenCounter" type="ds:CryptoBinary"/>
+ </sequence>
+ </sequence>
+</complexType>
+
+<element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
+<complexType name="RSAKeyValueType">
+ <sequence>
+ <element name="Modulus" type="ds:CryptoBinary"/>
+ <element name="Exponent" type="ds:CryptoBinary"/>
+ </sequence>
+</complexType>
+
+<!-- End KeyValue Element-types -->
+
+<!-- End Signature -->
+
+</schema>
Added: trunk/samples/esb/bpel_helloworld_saml/build.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/build.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/build.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,159 @@
+<project name="Quickstart_bpel_hello_world_saml" default="deploy" basedir=".">
+
+ <description>
+ ${ant.project.name}
+ ${line.separator}
+ </description>
+
+
+ <property name="deployers.dir" value="${deploy.dir}/../deployers"/>
+
+
+ <!-- additional deploys -->
+
+ <property name="additional.deploys" value="jboss-wsse-client.xml sts-client.properties, jboss-service.xml, login-config.xml, HelloWorldWS.wsdl"/>
+
+ <property name="stswar.build.dir" location="build/war/classes"/>
+
+ <target name="build-picklink-sts" description="make picklink-sts war">
+
+ <!-- War... -->
+ <jar destfile="build/picketlink-sts.war"
+ basedir="${basedir}/picketlink-sts" />
+
+<!--
+ <war warfile="build/picketlink-sts.war"
+ webxml="${basedir}/picketlink-sts/WEB-INF/web.xml">
+ <webinf dir="${basedir}/picketlink-sts/WEB-INF">
+ <include name="jboss-web.xml"/>
+ <include name="jboss-wsse-server.xml"/>
+ </webinf>
+ <fileset dir="${basedir}/war/view">
+ <include name="**/*"/>
+ </fileset>
+ <classes dir="${basedir}">
+ <include name="juddi.properties"/>
+ </classes>
+ </war>
+-->
+ </target>
+
+ <target name="quickstart-specific-predeploys" depends="build-picklink-sts" >
+ <!-- <copy todir="${deploy.dir}/../conf"
+ file="${basedir}/sts-login-config.xml"/> -->
+ <copy todir="${deploy.dir}/../conf/props"
+ file="${basedir}/props/sts-users.properties"/>
+ <copy todir="${deploy.dir}/../conf/props"
+ file="${basedir}/props/sts-roles.properties"/>
+ <copy file="${basedir}/build/picketlink-sts.war" todir="${deploy.dir}"/>
+ </target>
+
+ <target name="quickstart-specific-undeploys">
+ <delete file="${deploy.dir}/picketlink-sts.war"/>
+ <delete file="${deploy.dir}/../conf/sts-login-config.xml"/>
+ <delete file="${deploy.dir}/../conf/props/saml-users.properties"/>
+ <delete file="${deploy.dir}/../conf/props/saml-roles.properties"/>
+ </target>
+
+
+ <target name="quickstart-specific-clean">
+ <delete file="${basedir}/login-config.xml"/>
+ </target>
+
+
+ <property name="version" value="1" />
+
+ <property file="../../../install/deployment.properties" />
+ <import file="../../common/base-build.xml"/>
+
+ <property name="sample.jar.name" value="${ant.project.name}-${version}.jar" />
+ <property name="sample.esb.name" value="${ant.project.name}.esb" />
+
+ <property name="war.build.dir" location="build/war/classes"/>
+
+ <path id="compile-classpath">
+ <fileset dir="${org_jboss_as_home}/client" includes="*.jar" />
+ <fileset dir="${org_jboss_esb_home}/lib" includes="*.jar" />
+ </path>
+ <property name="compile-classpath" refid="compile-classpath"/>
+
+
+ <target name="makewar" description="make war">
+ <!-- Compile... -->
+ <mkdir dir="${war.build.dir}" />
+ <javac srcdir="war/src" destdir="${war.build.dir}" debug="true">
+ <classpath>
+ <path refid="compile-classpath" />
+ <fileset dir="war/resources/WEB-INF/lib" includes="*.jar" />
+ </classpath>
+ </javac>
+
+ <!-- War... -->
+ <war warfile="build/${ant.project.name}WS.war"
+ webxml="${basedir}/war/resources/WEB-INF/web.xml">
+ <webinf dir="${basedir}/war/resources/WEB-INF">
+ <include name="jboss-web.xml"/>
+ </webinf>
+ <classes dir="${war.build.dir}" includes="**/*.class"/>
+ <fileset dir="${basedir}/war/view">
+ <include name="**/*"/>
+ </fileset>
+ <classes dir="${basedir}">
+ <include name="juddi.properties"/>
+ </classes>
+ </war>
+ </target>
+
+ <target name="deploywar" depends="makewar" >
+ <copy todir="${deploy.dir}"
+ file="build/${ant.project.name}WS.war"/>
+ </target>
+
+ <target name="undeploywar">
+ <delete file="${deploy.dir}/${ant.project.name}WS.war"/>
+ </target>
+
+ <target name="compileesbsrc" description="compiles src for esb">
+ <!-- Compile... -->
+ <javac srcdir="${basedir}/src" destdir="${basedir}/esbcontent" debug="true">
+ <classpath>
+ <path refid="compile-classpath" />
+ </classpath>
+ </javac>
+ </target>
+
+ <target name="deployesb" depends="compileesbsrc">
+ <copy file="${basedir}/login-config-unfiltered.xml" tofile="${basedir}/esbcontent/login-config.xml" filtering="true" overwrite="true">
+ <filterset>
+ <filter token="STS_CONFIG_FILE_PATH" value="${basedir}/esbcontent/sts-client.properties"/>
+ </filterset>
+ </copy>
+ <jar basedir="esbcontent" destfile="${deploy.dir}/${sample.esb.name}" >
+ </jar>
+ </target>
+
+ <target name="undeployesb">
+ <delete file="${deploy.dir}/${sample.esb.name}"/>
+ </target>
+
+ <target name="deploy" depends="deploywar,quickstart-specific-predeploys,deployesb" >
+ <echo>Deploy ${ant.project.name}</echo>
+ <jar basedir="bpelContent" destfile="${deploy.dir}/${sample.jar.name}" />
+ </target>
+
+ <target name="undeploy" depends="undeploywar,undeployesb,quickstart-specific-undeploys" >
+ <echo>Undeploy ${ant.project.name}</echo>
+ <delete file="${deploy.dir}/${sample.jar.name}" />
+ </target>
+
+
+ <target name="sendhello">
+ <echo>Send test message to: ${ant.project.name}</echo>
+ <java classname="org.apache.ode.tools.sendsoap.cline.HttpSoapSender">
+ <arg value="http://localhost:8080/${ant.project.name}/ebws/BPELESBSecurity/SayHelloWi..."/>
+ <arg value="messages/hello_request1.xml"/>
+<classpath refid="rs-exec-classpath"/>
+ </java>
+ </target>
+
+</project>
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/HelloWorldWS.wsdl
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/HelloWorldWS.wsdl (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/HelloWorldWS.wsdl 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<definitions name="HelloWorldWSService"
+targetNamespace="http://simple_invoke/helloworld"
+xmlns="http://schemas.xmlsoap.org/wsdl/"
+xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+xmlns:tns="http://simple_invoke/helloworld"
+xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
+xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..."
+xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
+xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..."
+xmlns:wsaws="http://www.w3.org/2005/08/addressing"
+xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
+
+ <types>
+ <xs:schema targetNamespace="http://simple_invoke/helloworld" version="1.0" xmlns:tns="http://simple_invoke/helloworld" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="sayHello" type="tns:sayHello"/>
+ <xs:element name="sayHelloResponse" type="tns:sayHelloResponse"/>
+ <xs:complexType name="sayHello">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="toWhom" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="sayHelloResponse">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="return" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ <xsd:schema xmlns="http://www.w3.org/2001/XMLSchema">
+ <import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." schemaLocation="oasis-200401-wss-wssecurity-secext-1.0.xsd"/>
+ </xsd:schema>
+</types>
+
+ <message name="HelloWorld_sayHello">
+ <part element="tns:sayHello" name="sayHello"></part>
+ <part name="Security" element="wsse:Security" />
+ </message>
+ <message name="HelloWorld_sayHelloResponse">
+ <part element="tns:sayHelloResponse" name="sayHelloResponse"></part>
+ </message>
+ <portType name="HelloWorld">
+ <operation name="sayHello" parameterOrder="sayHello">
+ <input message="tns:HelloWorld_sayHello"></input>
+ <output message="tns:HelloWorld_sayHelloResponse"></output>
+ </operation>
+ </portType>
+ <binding name="HelloWorldBinding" type="tns:HelloWorld">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="sayHello">
+ <soap:operation soapAction=""/>
+ <input>
+ <soap:body use="literal" parts="sayHello"/>
+ <soap:header message="tns:HelloWorld_sayHello" part="Security" use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ </binding>
+ <service name="HelloWorldWSService">
+ <port binding="tns:HelloWorldBinding" name="HelloWorldPort">
+ <soap:address location="http://127.0.0.1:8080/Quickstart_bpel_hello_world_samlWS/HelloWorldWS"/>
+ </port>
+ </service>
+ <plnk:partnerLinkType name="theExternalService_PartnerLinkType">
+ <plnk:role name="callingTheExternalService" portType="tns:HelloWorld"/>
+ </plnk:partnerLinkType>
+</definitions>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/META-INF/jboss-esb.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/META-INF/jboss-esb.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/META-INF/jboss-esb.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,66 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml..." parameterReloadSecs="5">
+
+ <providers>
+ </providers>
+
+ <services>
+ <service
+ category="BPELESBSecurity"
+ name="SayHelloWithSecurity"
+ description="Hello World service configured to issue a security token and start a BPEL process with it"
+ invmScope="GLOBAL">
+ <security moduleName="saml-issue-token" callbackHandler="org.jboss.soa.esb.services.security.auth.login.JBossSTSIssueCallbackHandler"/>
+
+ <listeners>
+ </listeners>
+ <actions faultXsd="hello.xsd" inXsd="hello.xsd" outXsd="hello.xsd">
+ <action name="action1" class="org.jboss.soa.esb.actions.SystemPrintln">
+ <property name="printfull" value="true"/>
+ </action>
+
+ <action name="printSubject" class="org.jboss.soa.esb.samples.quickstart.securitysaml.DisplaySubjectAction"/>
+
+
+ <action name="action2" class="org.jboss.soa.esb.actions.bpel.BPELInvoke">
+ <property name="service" value="{http://simple_invoke/helloworld}HelloHeaderWSService"/>
+ <property name="operation" value="sayHi" />
+ <property name="requestPartName" value="sayHello" />
+ <property name="responsePartName" value="sayHelloResponse" />
+ <property name="requestSAMLPartName" value="Security" />
+ </action>
+ <!-- The next action is for Continuous Integration testing -->
+ <action name="testStore" class="org.jboss.soa.esb.actions.TestMessageStore"/>
+ </actions>
+ </service>
+
+ <service category="BPELESBSecurity" name="HelloWorldSecurityProxyService" description="WebService proxy with security"
+ invmScope="GLOBAL">
+ <security moduleName="saml-validate-token" callbackHandler="org.jboss.soa.esb.services.security.auth.login.JBossSTSTokenCallbackHandler">
+ <property name="org.jboss.soa.esb.services.security.contextTimeout" value="0"/>
+ </security>
+ <listeners>
+ <http-gateway name="Proxy_Basic-GwListener1">
+ <property name="composer-class" value="org.jboss.soa.esb.samples.quickstart.securitysaml.HttpGatewayMessageComposer"/>
+ </http-gateway>
+ </listeners>
+ <actions mep="RequestResponse">
+ <action name="echo-request"
+ class="org.jboss.soa.esb.actions.SystemPrintln">
+ <property name="message" value="Message before SOAPProxy" />
+ </action>
+ <action name="proxy"
+ class="org.jboss.soa.esb.actions.soap.proxy.SOAPProxy">
+ <!-- <property name="wsdl" value="classpath:///HelloWorldWS.wsdl" /> -->
+ <!-- <property name="wsdl" value="http://127.0.0.1:8080/Quickstart_bpel_hello_world_samlWS/HelloWorldWS?wsdl"/> -->
+<property name="wsdl" value="internal://jboss.ws:context=Quickstart_bpel_hello_world_samlWS,endpoint=HelloWorldWS"/>
+
+ </action>
+ <action name="echo-response"
+ class="org.jboss.soa.esb.actions.SystemPrintln">
+ <property name="message" value="Message after SOAPProxy" />
+ </action>
+ </actions>
+ </service>
+ </services>
+</jbossesb>
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/hello.xsd
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/hello.xsd (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/hello.xsd 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+ <xs:schema targetNamespace="http://simple_invoke/helloworld" version="1.0" xmlns:tns="http://simple_invoke/helloworld" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="sayHello" type="tns:sayHello"/>
+ <xs:element name="sayHelloResponse" type="tns:sayHelloResponse"/>
+ <xs:complexType name="sayHello">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="toWhom" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="sayHelloResponse">
+ <xs:sequence>
+ <xs:element minOccurs="0" name="return" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/jboss-service.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/jboss-service.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/jboss-service.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,8 @@
+<server>
+ <mbean code="org.jboss.security.auth.login.DynamicLoginConfig" name="org.jboss.esb.samples.quickstarts.security_saml:service=LoginModule">
+ <attribute name="AuthConfig">login-config.xml</attribute>
+ <depends optional-attribute-name="LoginConfigService">jboss.security:service=XMLLoginConfig</depends>
+ <depends optional-attribute-name="SecurityManagerService">jboss.security:service=JaasSecurityManager</depends>
+ </mbean>
+</server>
+
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/login-config.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/login-config.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/login-config.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,35 @@
+<policy>
+ <application-policy name="saml-issue-token">
+ <authentication>
+ <login-module code="org.picketlink.identity.federation.core.wstrust.auth.STSIssuingLoginModule" flag="required">
+ <module-option name="configFile">/Users/jdelong/Riftsaw22/riftsaw-2.2.0-SNAPSHOT/samples/esb/bpel_helloworld_saml/esbcontent/sts-client.properties</module-option>
+ <module-option name="endpointURI">http://security_saml/goodbyeworld</module-option>
+ <module-option name="password-stacking">true</module-option>
+ </login-module>
+ <login-module code="org.picketlink.identity.federation.core.wstrust.auth.STSValidatingLoginModule" flag="required">
+ <module-option name="configFile">/Users/jdelong/Riftsaw22/riftsaw-2.2.0-SNAPSHOT/samples/esb/bpel_helloworld_saml/esbcontent/sts-client.properties</module-option>
+ <module-option name="password-stacking">useFirstPass</module-option>
+ </login-module>
+ </authentication>
+ </application-policy>
+
+ <application-policy name="saml-validate-token">
+ <authentication>
+ <login-module code="org.picketlink.identity.federation.core.wstrust.auth.STSValidatingLoginModule" flag="required">
+ <module-option name="configFile">/Users/jdelong/Riftsaw22/riftsaw-2.2.0-SNAPSHOT/samples/esb/bpel_helloworld_saml/esbcontent/sts-client.properties</module-option>
+ <module-option name="useOptionsCredentials">true</module-option>
+ </login-module>
+ </authentication>
+ </application-policy>
+
+ <application-policy name="sts">
+ <authentication>
+ <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
+ flag="required">
+ <module-option name="usersProperties">props/sts-users.properties</module-option>
+ <module-option name="rolesProperties">props/sts-roles.properties</module-option>
+ </login-module>
+ </authentication>
+ </application-policy>
+
+</policy>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/picketlink-sts.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/picketlink-sts.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/picketlink-sts.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,5 @@
+serviceName=PicketLinkSTS
+portName=PicketLinkSTSPort
+endpointAddress=http://localhost:8080/picketlink-sts/JBossSTS
+username=admin
+password=admin
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/saml-roles.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/saml-roles.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/saml-roles.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,3 @@
+# A sample roles.properties file for use with the UsersRolesLoginModule
+admin=JBossAdmin,processAdmin
+bob=customer
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/saml-users.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/saml-users.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/props/saml-users.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,3 @@
+# A sample users.properties file for use with the UsersRolesLoginModule
+admin=admin
+bob=bob
Added: trunk/samples/esb/bpel_helloworld_saml/esbcontent/sts-client.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/esbcontent/sts-client.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/esbcontent/sts-client.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,5 @@
+serviceName=PicketLinkSTS
+portName=PicketLinkSTSPort
+endpointAddress=http://localhost:8080/picketlink-sts/PicketLinkSTS
+username=admin
+password=admin
Added: trunk/samples/esb/bpel_helloworld_saml/jboss-wsse-client.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/jboss-wsse-client.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/jboss-wsse-client.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<jboss-ws-security xmlns="http://www.jboss.com/ws-security/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.com/ws-security/config http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd">
+ <config>
+ <username/>
+ </config>
+</jboss-ws-security>
+
Added: trunk/samples/esb/bpel_helloworld_saml/jbossesb-properties.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/jbossesb-properties.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/jbossesb-properties.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+ JBoss, Home of Professional Open Source
+ Copyright 2006, JBoss Inc., and others contributors as indicated
+ by the @authors tag. All rights reserved.
+ See the copyright.txt in the distribution for a
+ full listing of individual contributors.
+ This copyrighted material is made available to anyone wishing to use,
+ modify, copy, or redistribute it subject to the terms and conditions
+ of the GNU Lesser General Public License, v. 2.1.
+ This program is distributed in the hope that it will be useful, but WITHOUT A
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ You should have received a copy of the GNU Lesser General Public License,
+ v.2.1 along with this distribution; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ MA 02110-1301, USA.
+
+ (C) 2005-2006,
+ @author JBoss Inc.
+-->
+<!-- $Id: jbossesb-unittest-properties.xml $ -->
+<!--
+ These options are described in the JBossESB manual.
+ Defaults are provided here for convenience only.
+
+ Please read through this file prior to using the system, and consider
+ updating the specified entries.
+-->
+<esb
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="jbossesb-1_0.xsd">
+ <properties name="core">
+ <property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
+ <property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
+ <property name="org.jboss.soa.esb.persistence.connection.factory" value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+ <property name="jboss.esb.invm.scope.default" value="NONE"/>
+ </properties>
+ <properties name="registry">
+ <property name="org.jboss.soa.esb.registry.queryManagerURI" value="org.apache.juddi.v3.client.transport.wrapper.UDDIInquiryService#inquire"/>
+ <property name="org.jboss.soa.esb.registry.lifeCycleManagerURI" value="org.apache.juddi.v3.client.transport.wrapper.UDDIPublicationService#publish"/>
+ <property name="org.jboss.soa.esb.registry.securityManagerURI" value="org.apache.juddi.v3.client.transport.wrapper.UDDISecurityService#secure"/>
+ <property name="org.jboss.soa.esb.registry.implementationClass" value="org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl"/>
+ <property name="org.jboss.soa.esb.registry.factoryClass" value="org.apache.ws.scout.registry.ConnectionFactoryImpl"/>
+ <property name="org.jboss.soa.esb.registry.user" value="root"/>
+ <property name="org.jboss.soa.esb.registry.password" value="root"/>
+ <!-- the following parameter is scout specific to set the type of communication between scout and the UDDI (embedded, rmi, soap) -->
+ <property name="org.jboss.soa.esb.scout.proxy.transportClass" value="org.apache.ws.scout.transport.LocalTransport"/>
+ <property name="org.jboss.soa.esb.scout.proxy.uddiVersion" value="3.0"/>
+ <property name="org.jboss.soa.esb.scout.proxy.uddiNameSpace" value="urn:uddi-org:api_v3"/>
+ <!-- Organization Category to be used by this deployment. -->
+ <property name="org.jboss.soa.esb.registry.orgCategory" value="org.jboss.soa.esb.:category"/>
+ </properties>
+ <properties name="transports" depends="core">
+ <property name="org.jboss.soa.esb.mail.smtp.host" value="localhost"/>
+ <property name="org.jboss.soa.esb.mail.smtp.user" value="jbossesb"/>
+ <property name="org.jboss.soa.esb.mail.smtp.password" value=""/>
+ <property name="org.jboss.soa.esb.mail.smtp.port" value="25"/>
+ </properties>
+ <properties name="connection">
+ <property name="min-pool-size" value="5"/>
+ <property name="max-pool-size" value="10"/>
+ <property name="blocking-timeout-millis" value="5000"/>
+ <property name="abandoned-connection-timeout" value="10000"/>
+ <property name="abandoned-connection-time-interval" value="30000"/>
+ </properties>
+ <properties name="dbstore">
+ <property name="org.jboss.soa.esb.persistence.db.connection.url" value="jdbc:hsqldb:hsql://localhost:9001/"/>
+ <property name="org.jboss.soa.esb.persistence.db.jdbc.driver" value="org.hsqldb.jdbcDriver"/>
+ <property name="org.jboss.soa.esb.persistence.db.user" value="sa"/>
+ <property name="org.jboss.soa.esb.persistence.db.pwd" value=""/>
+ <property name="org.jboss.soa.esb.persistence.db.pool.initial.size" value="2"/>
+ <property name="org.jboss.soa.esb.persistence.db.pool.min.size" value="2"/>
+ <property name="org.jboss.soa.esb.persistence.db.pool.max.size" value="5"/>
+ <!--table managed by pool to test for valid connections - created by pool automatically -->
+ <property name="org.jboss.soa.esb.persistence.db.pool.test.table" value="pooltest"/>
+ <!-- # of milliseconds to timeout waiting for a connection from pool -->
+ <property name="org.jboss.soa.esb.persistence.db.pool.timeout.millis" value="5000"/>
+ <property name="org.jboss.soa.esb.persistence.db.conn.manager" value="org.jboss.internal.soa.esb.persistence.manager.StandaloneConnectionManager"/>
+ </properties>
+ <properties name="messagerouting">
+ <property name="org.jboss.soa.esb.routing.cbrClass" value="org.jboss.internal.soa.esb.services.routing.cbr.JBossRulesRouter"/>
+ </properties>
+</esb>
Added: trunk/samples/esb/bpel_helloworld_saml/jndi.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/jndi.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/jndi.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,5 @@
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.provider.url=jnp://localhost:1099
+java.naming.factory.url.pkgs=org.jboss.naming
+java.naming.factory.url.pkgs=org.jnp.interfaces
+
Added: trunk/samples/esb/bpel_helloworld_saml/juddi.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/juddi.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/juddi.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,69 @@
+# jUDDI Registry Properties (used by RegistryServer)
+# see http://www.juddi.org for more information
+
+# The UDDI Operator Name
+juddi.operatorName = jUDDI.org
+
+# The i18n locale default codes
+juddi.i18n.languageCode = en
+juddi.i18n.countryCode = US
+
+# The UDDI DiscoveryURL Prefix
+juddi.discoveryURL = http://localhost:8080/juddi/uddiget.jsp?
+
+# The UDDI Operator Contact Email Address
+juddi.operatorEmailAddress = admin(a)juddi.org
+
+# The maximum name size and maximum number
+# of name elements allows in several of the
+# FindXxxx and SaveXxxx UDDI functions.
+juddi.maxNameLength=255
+juddi.maxNameElementsAllowed=5
+
+# The maximum number of UDDI artifacts allowed
+# per publisher. A value of '-1' indicates any
+# number of artifacts is valid (These values can be
+# overridden at the individual publisher level).
+juddi.maxBusinessesPerPublisher=25
+juddi.maxServicesPerBusiness=20
+juddi.maxBindingsPerService=10
+juddi.maxTModelsPerPublisher=100
+
+# jUDDI Authentication module to use
+juddi.auth = org.apache.juddi.auth.DefaultAuthenticator
+
+# jUDDI DataStore module currently to use
+juddi.dataStore = org.apache.juddi.datastore.jdbc.JDBCDataStore
+
+# use a dataSource (if set to false a direct
+# jdbc connection will be used.
+juddi.isUseDataSource=false
+juddi.jdbcDriver=com.mysql.jdbc.Driver
+juddi.jdbcUrl=jdbc:mysql://localhost:3306/juddi
+juddi.jdbcUsername=root
+juddi.jdbcPassword=admin
+# jUDDI DataSource to use
+# juddi.dataSource=java:comp/env/jdbc/MySqlDS
+
+# jUDDI UUIDGen implementation to use
+juddi.uuidgen = org.apache.juddi.uuidgen.DefaultUUIDGen
+
+# jUDDI Cryptor implementation to use
+juddi.cryptor = org.apache.juddi.cryptor.DefaultCryptor
+
+# jUDDI Validator to use
+juddi.validator=org.apache.juddi.validator.DefaultValidator
+
+# jUDDI Proxy Properties (used by RegistryProxy)
+juddi.proxy.adminURL = http://localhost:8080/juddi/admin
+juddi.proxy.inquiryURL = http://localhost:8080/juddi/inquiry
+juddi.proxy.publishURL = http://localhost:8080/juddi/publish
+juddi.proxy.transportClass = org.apache.juddi.proxy.AxisTransport
+juddi.proxy.securityProvider = com.sun.net.ssl.internal.ssl.Provider
+juddi.proxy.protocolHandler = com.sun.net.ssl.internal.www.protocol
+
+# JNDI settings (used by RMITransport)
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.provider.url=jnp://localhost:1099
+java.naming.factory.url.pkgs=org.jboss.naming
+
Added: trunk/samples/esb/bpel_helloworld_saml/log4j.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/log4j.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/log4j.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!-- -->
+<!-- Log4j Configuration -->
+<!-- -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml,v 1.26.2.5 2005/09/15 09:31:02 dimitris Exp $ -->
+
+<!--
+ | For more configuration infromation and examples see the Jakarta Log4j
+ | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+ <!-- ============================== -->
+ <!-- Append messages to the console -->
+ <!-- ============================== -->
+
+ <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+ <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+ <param name="Target" value="System.out"/>
+ <param name="Threshold" value="INFO"/>
+
+ <layout class="org.apache.log4j.PatternLayout">
+ <!-- The default pattern: Date Priority [Category] Message\n -->
+ <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%t][%c{1}] %m%n"/>
+ </layout>
+ </appender>
+
+ <!-- ================================= -->
+ <!-- Preserve messages in a local file -->
+ <!-- ================================= -->
+
+ <!-- A size based file rolling appender -->
+ <appender name="FILE" class="org.jboss.logging.appender.RollingFileAppender">
+ <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+ <param name="File" value="./listener.log"/>
+ <param name="Append" value="false"/>
+ <param name="MaxFileSize" value="500KB"/>
+ <param name="MaxBackupIndex" value="1"/>
+
+ <layout class="org.apache.log4j.PatternLayout">
+ <param name="ConversionPattern" value="%d %-5p [%t][%c] %m%n"/>
+ </layout>
+ </appender>
+
+ <!-- ================ -->
+ <!-- Limit categories -->
+ <!-- ================ -->
+
+ <category name="org.jboss">
+ <priority value="WARN"/>
+ </category>
+ <category name="org.jboss.soa.esb">
+ <priority value="ERROR"/>
+ </category>
+ <category name="org.jboss.internal.soa.esb">
+ <priority value="ERROR"/>
+ </category>
+ <category name="org.apache">
+ <priority value="ERROR"/>
+ </category>
+ <category name="quickstart">
+ <priority value="DEBUG"/>
+ </category>
+ <!-- ======================= -->
+ <!-- Setup the Root category -->
+ <!-- ======================= -->
+
+ <root>
+ <appender-ref ref="CONSOLE"/>
+ <appender-ref ref="FILE"/>
+ </root>
+
+</log4j:configuration>
Added: trunk/samples/esb/bpel_helloworld_saml/login-config-unfiltered.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/login-config-unfiltered.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/login-config-unfiltered.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,35 @@
+<policy>
+ <application-policy name="saml-issue-token">
+ <authentication>
+ <login-module code="org.picketlink.identity.federation.core.wstrust.auth.STSIssuingLoginModule" flag="required">
+ <module-option name="configFile">@STS_CONFIG_FILE_PATH@</module-option>
+ <module-option name="endpointURI">http://security_saml/goodbyeworld</module-option>
+ <module-option name="password-stacking">true</module-option>
+ </login-module>
+ <login-module code="org.picketlink.identity.federation.core.wstrust.auth.STSValidatingLoginModule" flag="required">
+ <module-option name="configFile">@STS_CONFIG_FILE_PATH@</module-option>
+ <module-option name="password-stacking">useFirstPass</module-option>
+ </login-module>
+ </authentication>
+ </application-policy>
+
+ <application-policy name="saml-validate-token">
+ <authentication>
+ <login-module code="org.picketlink.identity.federation.core.wstrust.auth.STSValidatingLoginModule" flag="required">
+ <module-option name="configFile">@STS_CONFIG_FILE_PATH@</module-option>
+ <module-option name="useOptionsCredentials">true</module-option>
+ </login-module>
+ </authentication>
+ </application-policy>
+
+ <application-policy name="sts">
+ <authentication>
+ <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
+ flag="required">
+ <module-option name="usersProperties">props/sts-users.properties</module-option>
+ <module-option name="rolesProperties">props/sts-roles.properties</module-option>
+ </login-module>
+ </authentication>
+ </application-policy>
+
+</policy>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/messages/hello_request1.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/messages/hello_request1.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/messages/hello_request1.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,15 @@
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext..." xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utilit..." xmlns:wsdl="http://www.jboss.org/bpel/examples/wsdl" xmlns:tns="http://simple_invoke/helloworld" >
+ <soapenv:Header>
+ <wsse:Security>
+ <wsse:UsernameToken>
+ <wsse:Username>admin</wsse:Username>
+ <wsse:Password>admin</wsse:Password>
+ </wsse:UsernameToken>
+ </wsse:Security>
+ </soapenv:Header>
+ <soapenv:Body>
+ <tns:sayHello>
+ <toWhom>Bob</toWhom>
+ </tns:sayHello>
+ </soapenv:Body>
+</soapenv:Envelope>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/MANIFEST.MF
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/MANIFEST.MF (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/MANIFEST.MF 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Created-By: 1.5.0_15 (Sun Microsystems Inc.)
+
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/pom.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/pom.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/pom.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Mon Nov 23 08:11:55 CET 2009
+version=1.0.0.CR1-SNAPSHOT
+groupId=org.picketlink
+artifactId=picketlink-sts
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/pom.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/pom.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/META-INF/maven/org.picketlink/picketlink-sts/pom.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,39 @@
+<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">
+ <parent>
+ <groupId>org.picketlink</groupId>
+ <artifactId>picketlink-federation-webapps</artifactId>
+ <version>1.0.0.CR1-SNAPSHOT</version>
+ <relativePath>../</relativePath>
+ </parent>
+
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>picketlink-sts</artifactId>
+ <packaging>war</packaging>
+ <name>PicketLink Federation Security Token Service</name>
+ <url>http://labs.jboss.org/portal/picketlink/</url>
+ <description>PicketLink Samples contains the samples for Federated Identity Needs.</description>
+ <licenses>
+ <license>
+ <name>lgpl</name>
+ <url>http://repository.jboss.com/licenses/lgpl.txt</url>
+ </license>
+ </licenses>
+ <organization>
+ <name>JBoss Inc.</name>
+ <url>http://www.jboss.org</url>
+ </organization>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>2.0.2</version>
+ <configuration>
+ <warName>picketlink-sts</warName>
+ <!--webappDirectory>${basedir}/resources/</webappDirectory>
+ <warSourceExcludes>WEB-INF/lib/*.jar</warSourceExcludes-->
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/classes/picketlink-sts.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/classes/picketlink-sts.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/classes/picketlink-sts.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,24 @@
+<PicketLinkSTS xmlns="urn:picketlink:identity-federation:config:1.0"
+ STSName="PicketLinkSTS" TokenTimeout="7200" EncryptToken="false">
+ <KeyProvider ClassName="org.picketlink.identity.federation.core.impl.KeyStoreKeyManager">
+ <Auth Key="KeyStoreURL" Value="sts_keystore.jks"/>
+ <Auth Key="KeyStorePass" Value="testpass"/>
+ <Auth Key="SigningKeyAlias" Value="sts"/>
+ <Auth Key="SigningKeyPass" Value="keypass"/>
+ <ValidatingAlias Key="http://services.testcorp.org/provider1" Value="service1"/>
+ </KeyProvider>
+ <TokenProviders>
+ <TokenProvider ProviderClass="org.picketlink.identity.federation.core.wstrust.plugins.saml.SAML20TokenProvider"
+ TokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0"
+ TokenElement="Assertion"
+ TokenElementNS="urn:oasis:names:tc:SAML:2.0:assertion">
+ <!-- <Property Key="AttributeProvider" Value="org.picketlink.identity.federation.bindings.jboss.auth.SAML20TokenRoleAttributeProvider"/> -->
+ </TokenProvider>
+ </TokenProviders>
+ <ServiceProviders>
+ <ServiceProvider Endpoint="http://services.testcorp.org/provider1" TokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0"
+ TruststoreAlias="service1"/>
+ <ServiceProvider Endpoint="http://security_saml/goodbyeworld" TokenType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV2.0"
+ TruststoreAlias="service1"/>
+ </ServiceProviders>
+</PicketLinkSTS>
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/classes/sts_keystore.jks
===================================================================
(Binary files differ)
Property changes on: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/classes/sts_keystore.jks
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/jboss-web.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/jboss-web.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/jboss-web.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jboss-web>
+ <security-domain>java:/jaas/sts</security-domain>
+</jboss-web>
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/jboss-wsse-server.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/jboss-wsse-server.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/jboss-wsse-server.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<jboss-ws-security xmlns="http://www.jboss.com/ws-security/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.jboss.com/ws-security/config http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd">
+ <config>
+ <requires/>
+ </config>
+</jboss-ws-security>
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/web.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/web.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/web.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,35 @@
+<?xml version="1.0"?>
+<!DOCTYPE web-app PUBLIC
+ "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+ "http://java.sun.com/dtd/web-app_2_3.dtd">
+
+<web-app>
+ <servlet>
+ <servlet-name>PicketLinkSTS</servlet-name>
+ <servlet-class>org.picketlink.identity.federation.core.wstrust.PicketLinkSTS</servlet-class>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>PicketLinkSTS</servlet-name>
+ <url-pattern>/*</url-pattern>
+ </servlet-mapping>
+
+ <security-constraint>
+ <web-resource-collection>
+ <web-resource-name>UsernameService</web-resource-name>
+ <url-pattern>/*</url-pattern>
+ </web-resource-collection>
+ <auth-constraint>
+ <role-name>JBossAdmin</role-name>
+ </auth-constraint>
+ </security-constraint>
+
+ <login-config>
+ <auth-method>BASIC</auth-method>
+ <realm-name>PicketLinkSTSRealm</realm-name>
+ </login-config>
+
+ <security-role>
+ <role-name>*</role-name>
+ </security-role>
+
+</web-app>
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/wsdl/PicketLinkSTS.wsdl
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/wsdl/PicketLinkSTS.wsdl (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts/WEB-INF/wsdl/PicketLinkSTS.wsdl 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<wsdl:definitions name="PicketLinkSTS" targetNamespace="urn:picketlink:identity-federation:sts"
+ xmlns:tns="urn:picketlink:identity-federation:sts"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:wsap10="http://www.w3.org/2006/05/addressing/wsdl"
+ xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/">
+ <wsdl:types>
+ <xs:schema targetNamespace="urn:picketlink:identity-federation:sts"
+ xmlns:tns="urn:picketlink:identity-federation:sts"
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
+ version="1.0">
+ <xs:element name="MessageBody">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:any minOccurs="0" maxOccurs="unbounded" namespace="##any"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:schema>
+ </wsdl:types>
+ <wsdl:message name="RequestSecurityToken">
+ <wsdl:part name="rstMessage" element="tns:MessageBody"/>
+ </wsdl:message>
+ <wsdl:message name="RequestSecurityTokenResponse">
+ <wsdl:part name="rstrMessage" element="tns:MessageBody"/>
+ </wsdl:message>
+ <wsdl:portType name="SecureTokenService">
+ <wsdl:operation name="IssueToken">
+ <wsdl:input wsap10:Action="http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue" message="tns:RequestSecurityToken"/>
+ <wsdl:output wsap10:Action="http://schemas.xmlsoap.org/ws/2005/02/trust/RSTR/Issue" message="tns:RequestSecurityTokenResponse"/>
+ </wsdl:operation>
+ </wsdl:portType>
+ <wsdl:binding name="STSBinding" type="tns:SecureTokenService">
+ <soap12:binding transport="http://schemas.xmlsoap.org/soap/http"/>
+ <wsdl:operation name="IssueToken">
+ <soap12:operation soapAction="http://schemas.xmlsoap.org/ws/2005/02/trust/RST/Issue" style="document"/>
+ <wsdl:input>
+ <soap12:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output>
+ <soap12:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+ </wsdl:binding>
+ <wsdl:service name="PicketLinkSTS">
+ <wsdl:port name="PicketLinkSTSPort" binding="tns:STSBinding">
+ <soap12:address location="http://localhost:8080/picketlink-sts"/>
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
Added: trunk/samples/esb/bpel_helloworld_saml/picketlink-sts.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/picketlink-sts.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/picketlink-sts.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,5 @@
+serviceName=PicketLinkSTS
+portName=PicketLinkSTSPort
+endpointAddress=http://localhost:8080/picketlink-sts/JBossSTS
+username=admin
+password=admin
Added: trunk/samples/esb/bpel_helloworld_saml/props/saml-roles.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/props/saml-roles.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/props/saml-roles.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,3 @@
+# A sample roles.properties file for use with the UsersRolesLoginModule
+admin=JBossAdmin,processAdmin
+bob=customer,JBossAdmin
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/props/saml-users.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/props/saml-users.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/props/saml-users.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,3 @@
+# A sample users.properties file for use with the UsersRolesLoginModule
+admin=admin
+bob=bob
Added: trunk/samples/esb/bpel_helloworld_saml/props/sts-roles.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/props/sts-roles.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/props/sts-roles.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,3 @@
+# A sample roles.properties file for use with the UsersRolesLoginModule
+admin=JBossAdmin,processAdmin
+bob=customer,JBossAdmin
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/props/sts-users.properties
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/props/sts-users.properties (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/props/sts-users.properties 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,3 @@
+# A sample users.properties file for use with the UsersRolesLoginModule
+admin=admin
+bob=bob
Added: trunk/samples/esb/bpel_helloworld_saml/readme.txt
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/readme.txt (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/readme.txt 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,42 @@
+ESB Examples - Using BPELInvoke to call a BPEL process using SAML to authenticate process participants
+======================================================================================================
+
+This is a somewhat complex example. Its goal is to show how SAML, WS-Trust, and WS-BPEL can be used to help a composite service allow access to an authenticated user from trusted party. The business requirement is fairly simple: A service provided by one party (call them PartyB) that is consumed by another party (call them PartyA) requires the invoking party first authenticate the user and send a claim with the message that asserts the authenticity of the user. PartyB requires the use of SAML Assertions for making this claim.
+
+Riftsaw, JBossESB, PicketLink, and JBossAS JAAS can together meet this requirement in the context of a business process performed by PartyA. The PicketLink project provides a component, PicketLinkSTS, that provides a WS-Trust SecureTokenService. This quickstart uses PicketLinkSTS to issue a SAML Token with an Authentication assertion (as PartyA). PicketLinkSTS is also used by the invoked service (PartyB) to validated the SAML Token. Riftsaw is responsible for passing the SAML token to the linked service.
+
+The quickstart is executed using ant sendhello, which invokes a Web service which is really an ESB service exposed as a Web service using EBWS. The client request includes a WS-Security header element with a UsernameToken. The EBWS generated Web service extracts the UsernameToken making it available to the ESB Service. The ESB Service is configured with a security element that specifies a JBoss JASS application policy that uses the PicketLinkSTS TokenIssuing login module. This login module authenticates the user using the UsernameToken and requests PicketLinkSTS to issue a SAMLToken for this user. Once the user is authenticated and the SAMLToken issues, the ESB Service action processing pipeline is entered, where a BPELInvoke action is called that starts a Riftsaw
+BPEL process and copies the SAML Token wrapped in a Security element into the process receive variable. The BPEL process then copies the Security element along with the data into another variable (this is specified in the BPEL process design), which is then used to populate the message sent to the invoke activity (PartyB's Web service). The invoke activity consumes a JaxWS Web service, which is proxied by another ESB service using the SOAPProxy action. SOAPProxy uses an HTTP Gateway, which does not process WS-Security elements. Therefore a custom message composer was added to the listener configuration of this second service. This second ESB service also uses PicketLinkSTS to validate the SAML Token.
+
+To deploy the example, open a command line window in the example's folder, and simply type 'ant deploy'. To undeploy, use the command 'ant undeploy'.
+
+To test the example, for example using the SOAPUI client, an example message can be found in the messages sub-folder, with the relevant WSDL being located in the server/default/data/wsdl/Quickstart_bpel_hello_world_saml/BPELESBSecurity folder.
+
+Alternatively, use the 'ant sendhello' command (from a command line window) to send the example message directly to the Web service.
+
+NOTE: The "ant deploy" command will by default deploy version 1 of the example to the server. If you wish to change the example, and redeploy, then you should either undeploy, or else you will need to update the version number in the build.xml, or override the version property, e.g. "ant -Dversion=2 deploy" (and similarly when undeploying "ant -Dversion=2 undeploy").
+
+Some handy URLs:
+http://localhost:8080/bpel-console is the BPEL console
+
+The quickstart bpel_helloworld_saml folder has several files and folders in it.
+
+
+/bpelcontent contains the bpel process definition, bpel-deploy.xml, and associated WSDL files for the services
+
+/esbcontent contains the definitions and sample code for the two ESB services. the hello.xsd is used to expose the ESB Service as a Web service, and HelloWorldWS.wsdl is used to define the service being proxied by the second ESBService. login-config.xml defines the PicketLink application policies / login modules, as well as an application policy to perform the initial authentication of the user (this uses the UsersRolesLoginModule). login-config.xml is generated from the login-config-unfiltered.xml at the root of the quickstart. Make any changes to this file. The jboss-service.xml is used to define an MBean to add these application policies dynamically. sts-client.properties is used by the STS login module to describe how to connect to the PicketLinkSTS service (this could be on another server) and to provide the TokenValidating login module with some credentials (since when it is invoked it has a SAML Token but no user credentials).
+
+/picketlink-sts contains files to create a Web application, picketlink-sts.war, which is also provided. Should changes be required to this Web application, run jar cvf ../picketlink-sts.war ** from a command line to re-create the war.
+
+/props contains an sts-users.properties and an sts-roles.properties. These are copied to the server/default/conf directory and referenced by the sts application policy. Additional users can be added to sts users.
+
+/src contains source code for DisplaySubjectAction, which is used in the first ESB Service to display the SAML token after it is issued, as well as HttpGatewayMessageComposer, which extracts the SAML Assertion from the SOAPHeader for processing by the ESB security component.
+
+/war contains the files for the Web service that is invoked by the BPEL process.
+
+
+
+Future work: Currently this quickstart only uses Authentication. Future versions hope to add authorization information to the SAML Token (in the form of AttributeStatements and / or AuthorizationDecisionStatements).
+
+
+
Added: trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/DisplaySubjectAction.java
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/DisplaySubjectAction.java (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/DisplaySubjectAction.java 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006,
+ * @author JBoss Inc.
+ */
+package org.jboss.soa.esb.samples.quickstart.securitysaml;
+
+import java.net.URL;
+import java.io.File;
+import java.io.FilePermission;
+import java.security.AccessControlContext;
+import java.security.AccessController;
+import java.security.CodeSource;
+import java.security.Permissions;
+import java.security.PermissionCollection;
+import java.security.Policy;
+
+import javax.security.auth.Subject;
+
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.actions.AbstractActionLifecycle;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+
+public class DisplaySubjectAction extends AbstractActionLifecycle
+{
+ public DisplaySubjectAction(final ConfigTree config) {}
+
+ public Message process(final Message message) throws Exception
+ {
+ Subject subject = Subject.getSubject(AccessController.getContext());
+ System.out.println("Subject in MyListenerAction : " + subject);
+ return message;
+ }
+}
Added: trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/HttpGatewayMessageComposer.java
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/HttpGatewayMessageComposer.java (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/src/org/jboss/soa/esb/samples/quickstart/securitysaml/HttpGatewayMessageComposer.java 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,44 @@
+package org.jboss.soa.esb.samples.quickstart.securitysaml;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.jboss.soa.esb.listeners.gateway.http.HttpMessageComposer;
+import org.jboss.soa.esb.listeners.gateway.http.HttpRequestWrapper;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.services.security.SecurityService;
+import org.jboss.soa.esb.services.security.SecurityServiceException;
+import org.jboss.soa.esb.services.security.auth.AuthenticationRequest;
+import org.jboss.soa.esb.services.security.auth.ExtractionException;
+import org.jboss.soa.esb.services.security.auth.ExtractorUtil;
+import org.jboss.soa.esb.services.security.auth.SecurityInfoExtractor;
+import org.jboss.soa.esb.services.security.auth.ws.SamlAssertionExtractor;
+
+
+public class HttpGatewayMessageComposer<T extends HttpRequestWrapper> extends HttpMessageComposer<T>
+{
+ protected void populateMessage(Message message, T requestWrapper) throws org.jboss.soa.esb.listeners.message.MessageDeliverException
+ {
+ super.populateMessage(message, requestWrapper);
+ if( message.getContext().getContext(SecurityService.AUTH_REQUEST) == null )
+ {
+ //No auth request, maybe it was a SAML v2 Assertion in the security header. Let's try to add it
+ try
+ {
+ Set<SecurityInfoExtractor<String>> extractors = new HashSet<SecurityInfoExtractor<String>>();
+ extractors.add( new SamlAssertionExtractor() );
+ AuthenticationRequest authRequest = ExtractorUtil.extract(message.getBody().get().toString(), extractors);
+ ExtractorUtil.addAuthRequestToMessage(authRequest, message);
+ }
+ catch( ExtractionException e )
+ {
+ throw new MessageDeliverException( e.getMessage(), e );
+ }
+ catch( SecurityServiceException e )
+ {
+ throw new MessageDeliverException( e.getMessage(), e );
+ }
+ }
+ }
+}
Added: trunk/samples/esb/bpel_helloworld_saml/sts-login-config.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/sts-login-config.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/sts-login-config.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,11 @@
+<policy>
+ <application-policy name="sts">
+ <authentication>
+ <login-module code="org.jboss.security.auth.spi.UsersRolesLoginModule"
+ flag="required">
+ <module-option name="usersProperties">props/saml-users.properties</module-option>
+ <module-option name="rolesProperties">props/saml-roles.properties</module-option>
+ </login-module>
+ </authentication>
+ </application-policy>
+</policy>
\ No newline at end of file
Added: trunk/samples/esb/bpel_helloworld_saml/war/resources/WEB-INF/web.xml
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/war/resources/WEB-INF/web.xml (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/war/resources/WEB-INF/web.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+
+<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
+ version="2.4">
+
+ <servlet>
+ <servlet-name>HelloWorldWS</servlet-name>
+ <servlet-class>org.jboss.soa.bpel.samples.quickstart.simple_invoke.HelloWorldWS</servlet-class>
+ </servlet>
+
+ <servlet-mapping>
+ <servlet-name>HelloWorldWS</servlet-name>
+ <url-pattern>/HelloWorldWS</url-pattern>
+ </servlet-mapping>
+
+</web-app>
Added: trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/bpel/samples/quickstart/simple_invoke/HelloWorldWS.java
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/bpel/samples/quickstart/simple_invoke/HelloWorldWS.java (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/war/src/org/jboss/soa/bpel/samples/quickstart/simple_invoke/HelloWorldWS.java 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,46 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006,
+ * @author JBoss Inc.
+ */
+
+package org.jboss.soa.bpel.samples.quickstart.simple_invoke;
+
+import javax.jws.WebMethod;
+import javax.jws.WebService;
+import javax.jws.soap.SOAPBinding;
+import javax.jws.WebParam;
+
+@WebService(name = "HelloWorld", targetNamespace = "http://simple_invoke/helloworld")
+public class HelloWorldWS
+{
+ @WebMethod
+ public String sayHello(@WebParam(name = "toWhom")
+ String toWhom)
+ {
+ System.out.println("\n");
+ System.out.println("*************************************************");
+ System.out.println("toWhom Parameter: " + toWhom );
+ System.out.println("*************************************************");
+ System.out.println("\n");
+ String greeting = "Hello " + toWhom + ". Sincerely, JBossWS";
+ return greeting;
+
+ }
+
+}
Added: trunk/samples/esb/bpel_helloworld_saml/war/view/index.jsp
===================================================================
--- trunk/samples/esb/bpel_helloworld_saml/war/view/index.jsp (rev 0)
+++ trunk/samples/esb/bpel_helloworld_saml/war/view/index.jsp 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,9 @@
+<html>
+ <body>
+ This is just a place holder.<br>
+ Verify the that the WS has been deployed by hitting
+ <a href="http://localhost:8080/jbossws">
+ http://localhost:8080/jbossws
+ </a>
+ </body>
+</html>
\ No newline at end of file
Added: trunk/samples/quickstart/order_management/.project
===================================================================
--- trunk/samples/quickstart/order_management/.project (rev 0)
+++ trunk/samples/quickstart/order_management/.project 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>order_management</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.wst.common.project.facet.core.builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.wst.validation.validationbuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.bpel.validator.builder</name>
+ <arguments>
+ <dictionary>
+ <key>debug</key>
+ <value>false</value>
+ </dictionary>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jem.workbench.JavaEMFNature</nature>
+ <nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature>
+ <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
+ </natures>
+</projectDescription>
Added: trunk/samples/quickstart/order_management/.settings/org.eclipse.wst.common.component
===================================================================
--- trunk/samples/quickstart/order_management/.settings/org.eclipse.wst.common.component (rev 0)
+++ trunk/samples/quickstart/order_management/.settings/org.eclipse.wst.common.component 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project-modules id="moduleCoreId" project-version="1.5.0">
+ <wb-module deploy-name="bpel_ordering">
+ <wb-resource deploy-path="/" source-path="/bpelContent"/>
+ </wb-module>
+</project-modules>
Added: trunk/samples/quickstart/order_management/.settings/org.eclipse.wst.common.project.facet.core.xml
===================================================================
--- trunk/samples/quickstart/order_management/.settings/org.eclipse.wst.common.project.facet.core.xml (rev 0)
+++ trunk/samples/quickstart/order_management/.settings/org.eclipse.wst.common.project.facet.core.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<faceted-project>
+ <fixed facet="jbt.bpel.facet.core"/>
+ <installed facet="jbt.bpel.facet.core" version="2.0"/>
+</faceted-project>
Added: trunk/samples/quickstart/order_management/Ordering-ejb/build.xml
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/build.xml (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/build.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,35 @@
+<project name="Ordering-ejb" default="package" basedir=".">
+
+ <property file="../../../../install/deployment.properties"/>
+
+ <property name="build.dir" value="build"/>
+ <property name="dist.dir" value="dist"/>
+ <property name="classes.dir" value="${build.dir}/classes"/>
+
+ <path id="compile-classpath">
+ <fileset dir="${org_jboss_as_home}/client" includes="ejb3-persistence.jar"/>
+ <fileset dir="${org_jboss_as_home}/client" includes="jboss-javaee.jar"/>
+ </path>
+
+ <property name="compile-classpath" refid="compile-classpath"/>
+
+ <target name="compile">
+ <mkdir dir="${classes.dir}" />
+ <javac srcdir="src/java" destdir="${classes.dir}" debug="true">
+ <classpath refid="compile-classpath"/>
+ </javac>
+ </target>
+
+ <target name="package" depends="compile">
+ <mkdir dir="${dist.dir}"/>
+ <jar basedir="${classes.dir}" destfile="${dist.dir}/${ant.project.name}.jar">
+ <metainf dir="src/conf/META-INF"/>
+ </jar>
+ </target>
+
+ <target name="clean">
+ <delete dir="${build.dir}"/>
+ <delete dir="${dist.dir}"/>
+ </target>
+
+</project>
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/MANIFEST.MF
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/MANIFEST.MF (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/MANIFEST.MF 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,2 @@
+Manifest-Version: 1.0
+
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/bpel-ds.xml
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/bpel-ds.xml (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/bpel-ds.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<datasources>
+ <local-tx-datasource>
+
+ <jndi-name>BPELQuickstartsDS</jndi-name>
+ <connection-url>jdbc:hsqldb:hsql://${jboss.bind.address}:54123</connection-url>
+ <driver-class>org.hsqldb.jdbcDriver</driver-class>
+
+ <user-name>sa</user-name>
+ <password></password>
+
+ <min-pool-size>5</min-pool-size>
+ <max-pool-size>20</max-pool-size>
+ <idle-timeout-minutes>0</idle-timeout-minutes>
+ <prepared-statement-cache-size>32</prepared-statement-cache-size>
+
+ <metadata>
+ <type-mapping>Hypersonic SQL</type-mapping>
+ </metadata>
+
+ <depends>jboss:service=Hypersonic</depends>
+ </local-tx-datasource>
+
+ <mbean code="org.jboss.jdbc.HypersonicDatabase"
+ name="jboss:service=Hypersonic">
+ <attribute name="Port">54123</attribute>
+ <attribute name="BindAddress">localhost</attribute>
+ <attribute name="Silent">true</attribute>
+ <attribute name="Database">default</attribute>
+ <attribute name="Trace">false</attribute>
+ <attribute name="No_system_exit">true</attribute>
+ </mbean>
+
+</datasources>
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/jboss.xml
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/jboss.xml (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/jboss.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<jboss/>
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
+
+ <persistence-unit name="OrderingPU" transaction-type="JTA">
+ <provider>org.hibernate.ejb.HibernatePersistence</provider>
+ <jta-data-source>java:/BPELQuickstartsDS</jta-data-source>
+ <exclude-unlisted-classes>false</exclude-unlisted-classes>
+ <properties>
+ <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
+ <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+ </properties>
+ </persistence-unit>
+
+</persistence>
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml.hsql
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml.hsql (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml.hsql 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
+
+ <persistence-unit name="OrderingPU" transaction-type="JTA">
+ <provider>org.hibernate.ejb.HibernatePersistence</provider>
+ <jta-data-source>java:/BPELQuickstartsDS</jta-data-source>
+ <exclude-unlisted-classes>false</exclude-unlisted-classes>
+ <properties>
+ <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
+ <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+ </properties>
+ </persistence-unit>
+
+</persistence>
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml.mysql51
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml.mysql51 (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/conf/META-INF/persistence.xml.mysql51 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
+
+ <persistence-unit name="OrderingPU" transaction-type="JTA">
+ <provider>org.hibernate.ejb.HibernatePersistence</provider>
+ <jta-data-source>java:/DefaultDS</jta-data-source>
+ <exclude-unlisted-classes>false</exclude-unlisted-classes>
+ <properties>
+ <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
+ <property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/soa_schema1"/>
+ <property name="hibernate.connection.username" value="soauser"/>
+ <property name="hibernate.connection.password" value="soapasswd"/>
+ <property name="hibernate.connection.pool_size" value="10"/>
+ <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect"/>
+ <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
+ <property name="current_session_context_class" value="thread"/>
+ <property name="hibernate.session_factory_name" value="SessionFactory"/>
+ </properties>
+ </persistence-unit>
+
+</persistence>
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/OrderingBean.java
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/OrderingBean.java (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/OrderingBean.java 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,63 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package org.jboss.soa.bpel.sample.quickstart.ordering.ejb;
+
+import javax.ejb.Stateless;
+import javax.persistence.EntityManager;
+import javax.persistence.FlushModeType;
+import javax.persistence.PersistenceContext;
+import org.jboss.soa.bpel.sample.quickstart.ordering.model.Item;
+
+import org.jboss.soa.bpel.sample.quickstart.ordering.model.Order;
+
+/**
+ *
+ * @author mbaluch
+ */
+@Stateless(name="OrderingEJB")
+public class OrderingBean implements OrderingBeanLocal {
+
+ @PersistenceContext
+ private EntityManager em;
+
+ public Long createOrder(Long itemId, int quantity) {
+ Order order = new Order();
+ order.setItemId(itemId);
+ order.setQuantity(quantity);
+ order.setStatus("NEW");
+
+ return createOrder(order);
+ }
+
+ public void updateOrder(Order order) {
+ System.out.println("[OrderingBean] Updating Order: " + order);
+ em.merge(order);
+ //em.flush();
+ }
+
+ public Long createOrder(Order order) {
+ System.out.println("[OrderingBean] Creating new Order: " + order);
+ em.persist(order);
+ //em.flush();
+ return order.getId();
+ }
+
+ public int getItemInfo(Long id) {
+ return em.find(Item.class, id).getPrice();
+ }
+
+ public void setState(Long id, String state) {
+ Order order = em.find(Order.class, id);
+ order.setStatus(state);
+ updateOrder(order);
+ }
+
+ public String getState(Long id) {
+ Order order = em.find(Order.class, id);
+ return order.getStatus();
+ }
+
+}
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/OrderingBeanLocal.java
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/OrderingBeanLocal.java (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/ejb/OrderingBeanLocal.java 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,30 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package org.jboss.soa.bpel.sample.quickstart.ordering.ejb;
+
+import javax.ejb.Local;
+import org.jboss.soa.bpel.sample.quickstart.ordering.model.Order;
+
+/**
+ *
+ * @author mbaluch
+ */
+@Local
+public interface OrderingBeanLocal {
+
+ Long createOrder(Long itemId, int quantity);
+
+ Long createOrder(Order order);
+
+ void updateOrder(Order order);
+
+ int getItemInfo(Long id);
+
+ void setState(Long id, String state);
+
+ String getState(Long id);
+
+}
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/Item.java
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/Item.java (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/Item.java 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,82 @@
+package org.jboss.soa.bpel.sample.quickstart.ordering.model;
+
+import java.io.Serializable;
+
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+/**
+ *
+ * @author mbaluch
+ */
+@Entity
+@Table(name="bpel_ordering_item")
+public class Item implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @Id
+ private Long id;
+
+ private String name;
+
+ private int price;
+
+ public Item() {
+ }
+
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public int getPrice() {
+ return price;
+ }
+
+ public void setPrice(int price) {
+ this.price = price;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final Item other = (Item) obj;
+ if (this.id != other.id && (this.id == null || !this.id.equals(other.id))) {
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ int hash = 3;
+ hash = 41 * hash + (this.id != null ? this.id.hashCode() : 0);
+ hash = 41 * hash + (this.name != null ? this.name.hashCode() : 0);
+ return hash;
+ }
+
+ @Override
+ public String toString() {
+ return "Item{" + "id=" + id + ", name=" + name + ", price=" + price + '}';
+ }
+
+}
Added: trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/Order.java
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/Order.java (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-ejb/src/java/org/jboss/soa/bpel/sample/quickstart/ordering/model/Order.java 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,105 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package org.jboss.soa.bpel.sample.quickstart.ordering.model;
+
+import java.io.Serializable;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+/**
+ *
+ * @author mbaluch
+ */
+@Entity()
+@Table(name="bpel_ordering_order")
+public class Order implements Serializable {
+
+ private static final Long serialVersionUID = 1L;
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.SEQUENCE) // for HSQLDB
+ //@GeneratedValue(strategy = GenerationType.AUTO) // for MySQL51
+ private Long id;
+
+ private Long itemId;
+
+ private int quantity;
+
+ @Column(name = "stte")
+ private String status;
+
+
+ public Order() {
+ }
+
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public Long getItemId() {
+ return itemId;
+ }
+
+ public void setItemId(Long itemId) {
+ this.itemId = itemId;
+ }
+
+ public int getQuantity() {
+ return quantity;
+ }
+
+ public void setQuantity(int quantity) {
+ this.quantity = quantity;
+ }
+
+ public String getStatus() {
+ return status;
+ }
+
+ public void setStatus(String status) {
+ this.status = status;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ final Order other = (Order) obj;
+ if (this.id != other.id && (this.id == null || !this.id.equals(other.id))) {
+ return false;
+ }
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ int hash = 5;
+ hash = 23 * hash + (this.id != null ? this.id.hashCode() : 0);
+ hash = 23 * hash + (this.itemId != null ? this.itemId.hashCode() : 0);
+ hash = 23 * hash + this.quantity;
+ hash = 23 * hash + (this.status != null ? this.status.hashCode() : 0);
+ return hash;
+ }
+
+ @Override
+ public String toString() {
+ return "Order{" + "id=" + id + ", itemId=" + itemId + ", quantity=" + quantity + ", status=" + status + '}';
+ }
+
+}
Added: trunk/samples/quickstart/order_management/Ordering-war/build.xml
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-war/build.xml (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-war/build.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,44 @@
+<project name="Ordering-war" default="package" basedir=".">
+
+ <property file="../../../../install/deployment.properties"/>
+
+ <property name="build.dir" value="build"/>
+ <property name="dist.dir" value="dist"/>
+ <property name="classes.dir" value="${build.dir}/classes"/>
+
+ <path id="compile-classpath">
+ <fileset dir="${org_jboss_as_home}/client" includes="*.jar"/>
+ <pathelement path="../Ordering-ejb/build/classes"/>
+ </path>
+
+ <property name="compile-classpath" refid="compile-classpath"/>
+
+ <target name="compile">
+ <mkdir dir="${classes.dir}" />
+ <javac srcdir="src/java" destdir="${classes.dir}" debug="true">
+ <classpath>
+ <path refid="compile-classpath" />
+ </classpath>
+ </javac>
+ </target>
+
+ <target name="package" depends="compile">
+ <mkdir dir="${dist.dir}"/>
+ <war warfile="${dist.dir}/${ant.project.name}.war"
+ webxml="web/WEB-INF/web.xml">
+ <webinf dir="web/WEB-INF">
+ <include name="web.xml"/>
+ </webinf>
+ <classes dir="${classes.dir}" includes="**/*.class"/>
+ <fileset dir="web">
+ <include name="**/*"/>
+ </fileset>
+ </war>
+ </target>
+
+ <target name="clean">
+ <delete dir="${build.dir}"/>
+ <delete dir="${dist.dir}"/>
+ </target>
+
+</project>
Added: trunk/samples/quickstart/order_management/Ordering-war/src/conf/MANIFEST.MF
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-war/src/conf/MANIFEST.MF (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-war/src/conf/MANIFEST.MF 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,2 @@
+Manifest-Version: 1.0
+
Added: trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/samples/quickstart/ordering/ws/OrderingService.java
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/samples/quickstart/ordering/ws/OrderingService.java (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-war/src/java/org/jboss/soa/bpel/samples/quickstart/ordering/ws/OrderingService.java 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,64 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package org.jboss.soa.bpel.samples.quickstart.ordering.ws;
+
+import javax.ejb.EJB;
+import javax.ejb.Stateless;
+
+//import javax.jws.Oneway;
+import javax.jws.WebMethod;
+import javax.jws.WebParam;
+import javax.jws.WebService;
+
+import org.jboss.soa.bpel.sample.quickstart.ordering.ejb.OrderingBeanLocal;
+
+/**
+ *
+ * @author mbaluch
+ */
+@Stateless
+@WebService(name="OrderingWS", targetNamespace="http://jboss.org/bpel/ordering")
+public class OrderingService {
+
+ @EJB(beanName="OrderingEJB")
+ private OrderingBeanLocal ejbRef;
+
+ /**
+ * Web service operation
+ */
+ @WebMethod(operationName = "createOrder")
+ public Long createOrder(@WebParam(name = "itemId") Long itemId, @WebParam(name = "quantity") int quantity) {
+ long l = ejbRef.createOrder(itemId, quantity);
+ return l;
+ }
+
+ /**
+ * Web service operation
+ */
+ @WebMethod(operationName = "setState")
+// @Oneway
+ public String setState(@WebParam(name = "orderId") Long orderId, @WebParam(name = "state") String state) {
+ ejbRef.setState(orderId, state);
+ return getState(orderId);
+ }
+
+ /**
+ * Web service operation
+ */
+ @WebMethod(operationName = "getState")
+ public String getState(@WebParam(name = "orderId") Long orderId) {
+ return ejbRef.getState(orderId);
+ }
+
+ /**
+ * Web service operation
+ */
+ @WebMethod(operationName = "getItemInfo")
+ public int getItemInfo(@WebParam(name = "id") Long id) {
+ return ejbRef.getItemInfo(id);
+ }
+
+}
Added: trunk/samples/quickstart/order_management/Ordering-war/web/WEB-INF/web.xml
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-war/web/WEB-INF/web.xml (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-war/web/WEB-INF/web.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<web-app version="2.5" 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">
+ <servlet>
+ <servlet-name>OrderingService</servlet-name>
+ <servlet-class>org.jboss.soa.bpel.samples.quickstart.ordering.ws.OrderingService</servlet-class>
+ <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>OrderingService</servlet-name>
+ <url-pattern>/OrderingService</url-pattern>
+ </servlet-mapping>
+ <session-config>
+ <session-timeout>
+ 30
+ </session-timeout>
+ </session-config>
+ <welcome-file-list>
+ <welcome-file>index.jsp</welcome-file>
+ </welcome-file-list>
+</web-app>
Added: trunk/samples/quickstart/order_management/Ordering-war/web/index.jsp
===================================================================
--- trunk/samples/quickstart/order_management/Ordering-war/web/index.jsp (rev 0)
+++ trunk/samples/quickstart/order_management/Ordering-war/web/index.jsp 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,19 @@
+<%--
+ Document : index
+ Created on : Oct 25, 2010, 12:19:55 PM
+ Author : mbaluch
+--%>
+
+<%@page contentType="text/html" pageEncoding="UTF-8"%>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+ <title>JSP Page</title>
+ </head>
+ <body>
+ <h1>Hello World!</h1>
+ </body>
+</html>
Added: trunk/samples/quickstart/order_management/bpelContent/Ordering.bpel
===================================================================
--- trunk/samples/quickstart/order_management/bpelContent/Ordering.bpel (rev 0)
+++ trunk/samples/quickstart/order_management/bpelContent/Ordering.bpel 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,344 @@
+<bpel:process name="Ordering"
+ targetNamespace="http://www.jboss.org/bpel/samples"
+ xmlns:tns="http://www.jboss.org/bpel/samples"
+ xmlns:bpel="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
+ xmlns:ns1="http://jboss.org/bpel/ordering"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+
+ <bpel:import location="OrderingService.wsdl"
+ namespace="http://jboss.org/bpel/ordering"
+ importType="http://schemas.xmlsoap.org/wsdl/"/>
+
+ <bpel:import location="OrderingArtifacts.wsdl"
+ namespace="http://www.jboss.org/bpel/samples"
+ importType="http://schemas.xmlsoap.org/wsdl/" />
+
+ <bpel:partnerLinks>
+ <bpel:partnerLink name="client"
+ partnerLinkType="tns:Ordering"
+ myRole="OrderingProvider"/>
+
+ <bpel:partnerLink name="ordering"
+ partnerLinkType="ns1:OrderingService_PartnerLink"
+ partnerRole="OrderingService_Provider"/>
+
+ </bpel:partnerLinks>
+
+ <bpel:variables>
+ <bpel:variable name="id" type="xsd:long"/>
+
+ <bpel:variable name="newOrder" messageType="tns:NewOrderRequest"/>
+ <bpel:variable name="newOrderResponse" messageType="tns:NewOrderResponse"/>
+ <bpel:variable name="approveRequest" messageType="tns:ApproveOrderRequest"/>
+
+ <bpel:variable name="createOrderRequest" messageType="ns1:CreateOrderRequest"/>
+ <bpel:variable name="createOrderResponse" messageType="ns1:CreateOrderResponse"/>
+ <bpel:variable name="setStateRequest" messageType="ns1:SetOrderStateRequest"/>
+
+ <bpel:variable name="itemInfoRequest" messageType="ns1:GetItemInfoRequest"/>
+ <bpel:variable name="itemInfoResponse" messageType="ns1:GetItemInfoResponse"/>
+
+ <bpel:variable name="setStateResponse" messageType="ns1:SetOrderStateResponse"></bpel:variable>
+ </bpel:variables>
+
+ <bpel:correlationSets>
+ <bpel:correlationSet name="correlator" properties="tns:sessionId"/>
+ </bpel:correlationSets>
+ <bpel:sequence name="main">
+
+ <bpel:receive name="receiveOrder"
+ partnerLink="client"
+ portType="tns:OrderingPortType"
+ operation="order"
+ variable="newOrder"
+ createInstance="yes"/>
+
+ <bpel:assign validate="no" name="initalizeVariables">
+ <!-- initialize createOrderRequest variable -->
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>
+ <ns1:createOrder>
+ <itemId/>
+ <quantity/>
+ </ns1:createOrder>
+ </bpel:literal>
+ </bpel:from>
+ <bpel:to variable="createOrderRequest" part="createOrder"/>
+ </bpel:copy>
+ <!-- initialize createOrderResponse variable -->
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>
+ <tns:orderResponse>
+ <orderId/>
+ </tns:orderResponse>
+ </bpel:literal>
+ </bpel:from>
+ <bpel:to variable="newOrderResponse" part="orderResponse"/>
+ </bpel:copy>
+ <!-- initialize setStateRequest variable -->
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>
+ <ns1:setState>
+ <orderId/>
+ <state/>
+ </ns1:setState>
+ </bpel:literal>
+ </bpel:from>
+ <bpel:to variable="setStateRequest" part="setState"/>
+ </bpel:copy>
+ <!-- initialize itemInfoRequest variable -->
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>
+ <ns1:getItemInfo>
+ <id/>
+ </ns1:getItemInfo>
+ </bpel:literal>
+ </bpel:from>
+ <bpel:to part="getItemInfo" variable="itemInfoRequest"/>
+ </bpel:copy>
+ </bpel:assign>
+
+ <bpel:assign validate="no" name="assignOrder">
+ <bpel:copy>
+ <bpel:from part="order" variable="newOrder">
+ <bpel:query>itemId</bpel:query>
+ </bpel:from>
+ <bpel:to part="createOrder" variable="createOrderRequest">
+ <bpel:query>itemId</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from part="order" variable="newOrder">
+ <bpel:query>quantity</bpel:query>
+ </bpel:from>
+ <bpel:to part="createOrder" variable="createOrderRequest">
+ <bpel:query>quantity</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+
+ <bpel:invoke name="createNewOrder"
+ partnerLink="ordering"
+ operation="createOrder"
+ inputVariable="createOrderRequest"
+ outputVariable="createOrderResponse"/>
+
+ <bpel:assign validate="no" name="assignId">
+ <bpel:copy>
+ <bpel:from part="createOrderResponse" variable="createOrderResponse">
+ <bpel:query>return</bpel:query>
+ </bpel:from>
+ <bpel:to variable="id"/>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from variable="id"></bpel:from>
+ <bpel:to part="orderResponse" variable="newOrderResponse">
+ <bpel:query>orderId</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+
+ <bpel:reply name="replyId"
+ partnerLink="client"
+ operation="order"
+ portType="tns:OrderingPortType"
+ variable="newOrderResponse">
+ <bpel:correlations>
+ <bpel:correlation set="correlator" initiate="yes"/>
+ </bpel:correlations>
+ </bpel:reply>
+
+ <bpel:receive name="receiveTechApprove"
+ partnerLink="client"
+ operation="approve"
+ portType="tns:OrderingPortType"
+ variable="approveRequest">
+ <bpel:correlations>
+ <bpel:correlation set="correlator" initiate="no"/>
+ </bpel:correlations>
+ </bpel:receive>
+
+ <bpel:if name="isApproved">
+ <!-- BOOLEAN is handled as STRING - is this a BUG or what ??? -->
+ <bpel:condition>$approveRequest.orderApproval/approved = 'true'</bpel:condition>
+ <bpel:sequence>
+
+ <bpel:assign validate="no" name="assingState">
+ <bpel:copy>
+ <bpel:from variable="id"/>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>orderId</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>APPROVED</bpel:literal>
+ </bpel:from>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>state</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+
+ <bpel:invoke name="setState"
+ partnerLink="ordering"
+ operation="setState"
+ portType="ns1:OrderingWS"
+ inputVariable="setStateRequest"
+ outputVariable="setStateResponse"/>
+
+ <bpel:assign validate="no" name="assignItemId">
+ <bpel:copy>
+ <bpel:from part="order" variable="newOrder">
+ <bpel:query>itemId</bpel:query>
+ </bpel:from>
+ <bpel:to part="getItemInfo" variable="itemInfoRequest">
+ <bpel:query>id</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+
+ <bpel:invoke name="getItemInfo"
+ partnerLink="ordering"
+ operation="getItemInfo"
+ portType="ns1:OrderingWS"
+ inputVariable="itemInfoRequest"
+ outputVariable="itemInfoResponse"/>
+
+ <bpel:if name="checkPrice">
+ <bpel:condition>$itemInfoResponse.getItemInfoResponse * $newOrder.order/quantity > 10000</bpel:condition>
+ <bpel:sequence>
+ <bpel:receive name="receiveFinanceApprove"
+ partnerLink="client"
+ operation="approve"
+ portType="tns:OrderingPortType"
+ variable="approveRequest" >
+ <bpel:correlations>
+ <bpel:correlation set="correlator" initiate="no"></bpel:correlation>
+ </bpel:correlations>
+ </bpel:receive>
+ <bpel:if name="If">
+ <bpel:condition>$approveRequest.orderApproval/approved = 'true'</bpel:condition>
+ <bpel:sequence name="Sequence">
+ <bpel:assign validate="no" name="assignState">
+ <bpel:copy>
+ <bpel:from variable="id"/>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>orderId</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>FINISHED</bpel:literal>
+ </bpel:from>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>state</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+
+ <bpel:invoke name="setState"
+ partnerLink="ordering"
+ operation="setState"
+ portType="ns1:OrderingWS"
+ inputVariable="setStateRequest" outputVariable="setStateResponse"/>
+
+ </bpel:sequence>
+ <bpel:else>
+ <bpel:sequence>
+ <bpel:assign validate="no" name="assignState">
+ <bpel:copy>
+ <bpel:from variable="id"/>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>orderId</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>REJECTED</bpel:literal>
+ </bpel:from>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>state</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+
+ <bpel:invoke name="setState"
+ partnerLink="ordering"
+ operation="setState"
+ portType="ns1:OrderingWS"
+ inputVariable="setStateRequest" outputVariable="setStateResponse"/>
+
+ </bpel:sequence>
+ </bpel:else>
+ </bpel:if>
+ </bpel:sequence>
+ <bpel:else>
+ <bpel:sequence>
+ <bpel:assign validate="no" name="assingState">
+ <bpel:copy>
+ <bpel:from variable="id"/>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>orderId</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>FINISHED</bpel:literal>
+ </bpel:from>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>state</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+
+ </bpel:assign>
+
+ <bpel:invoke name="setState"
+ partnerLink="ordering"
+ operation="setState"
+ portType="ns1:OrderingWS"
+ inputVariable="setStateRequest" outputVariable="setStateResponse"/>
+
+ </bpel:sequence>
+ </bpel:else>
+ </bpel:if>
+ </bpel:sequence>
+ <bpel:else>
+ <bpel:sequence>
+
+ <bpel:assign validate="no" name="assignState">
+ <bpel:copy>
+ <bpel:from variable="id"/>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>orderId</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ <bpel:copy>
+ <bpel:from>
+ <bpel:literal>REJECTED</bpel:literal>
+ </bpel:from>
+ <bpel:to part="setState" variable="setStateRequest">
+ <bpel:query>state</bpel:query>
+ </bpel:to>
+ </bpel:copy>
+ </bpel:assign>
+
+ <bpel:invoke name="setState"
+ partnerLink="ordering"
+ operation="setState"
+ portType="ns1:OrderingWS"
+ inputVariable="setStateRequest" outputVariable="setStateResponse"/>
+
+ </bpel:sequence>
+ </bpel:else>
+ </bpel:if>
+
+ <bpel:exit name="Quit" />
+
+ </bpel:sequence>
+</bpel:process>
+
Added: trunk/samples/quickstart/order_management/bpelContent/OrderingArtifacts.wsdl
===================================================================
--- trunk/samples/quickstart/order_management/bpelContent/OrderingArtifacts.wsdl (rev 0)
+++ trunk/samples/quickstart/order_management/bpelContent/OrderingArtifacts.wsdl 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.jboss.org/bpel/samples" xmlns:vprop="http://docs.oasis-open.org/wsbpel/2.0/varprop" xmlns:wsdl="http://jboss.org/bpel/ordering" xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="Ordering" targetNamespace="http://www.jboss.org/bpel/samples">
+
+ <plnk:partnerLinkType name="Ordering">
+ <plnk:role name="OrderingProvider" portType="tns:OrderingPortType"/>
+ </plnk:partnerLinkType>
+
+ <vprop:property name="sessionId" type="xsd:long"/>
+
+ <vprop:propertyAlias messageType="tns:ApproveOrderRequest" part="orderApproval" propertyName="tns:sessionId">
+ <vprop:query>orderId</vprop:query>
+ </vprop:propertyAlias>
+
+ <vprop:propertyAlias messageType="tns:NewOrderResponse" part="orderResponse" propertyName="tns:sessionId">
+ <vprop:query>orderId</vprop:query>
+ </vprop:propertyAlias>
+
+ <types>
+ <xsd:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://www.jboss.org/bpel/samples">
+
+ <xsd:element name="id">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:long"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:element name="order">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="itemId" type="xsd:long"/>
+ <xsd:element name="quantity" type="xsd:int"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="orderResponse">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="orderId" type="xsd:long"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="orderApproval">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="orderId" type="xsd:long"/>
+ <xsd:element name="approved" type="xsd:boolean"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ </types>
+
+ <message name="NewOrderRequest">
+ <part element="tns:order" name="order"/>
+ </message>
+ <message name="NewOrderResponse">
+ <part element="tns:orderResponse" name="orderResponse"/>
+ </message>
+ <message name="ApproveOrderRequest">
+ <part element="tns:orderApproval" name="orderApproval"/>
+ </message>
+
+ <portType name="OrderingPortType">
+ <operation name="order">
+ <input message="tns:NewOrderRequest"/>
+ <output message="tns:NewOrderResponse"/>
+ </operation>
+ <operation name="approve">
+ <input message="tns:ApproveOrderRequest"/>
+ </operation>
+ </portType>
+
+ <binding name="OrderingBinding" type="tns:OrderingPortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="order">
+ <soap:operation soapAction="http://www.jboss.org/bpel/samples/order"/>
+ <input>
+ <soap:body use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ <operation name="approve">
+ <soap:operation soapAction="http://www.jboss.org/bpel/samples/approve"/>
+ <input>
+ <soap:body use="literal"/>
+ </input>
+ </operation>
+ </binding>
+
+ <service name="OrderingService">
+ <port binding="tns:OrderingBinding" name="OrderingPort">
+ <soap:address location="http://localhost:8080/orderingWS"/>
+ </port>
+ </service>
+
+</definitions>
Added: trunk/samples/quickstart/order_management/bpelContent/OrderingService.wsdl
===================================================================
--- trunk/samples/quickstart/order_management/bpelContent/OrderingService.wsdl (rev 0)
+++ trunk/samples/quickstart/order_management/bpelContent/OrderingService.wsdl 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,146 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+
+<definitions name='OrderingService'
+ targetNamespace='http://jboss.org/bpel/ordering'
+ xmlns='http://schemas.xmlsoap.org/wsdl/'
+ xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/'
+ xmlns:tns='http://jboss.org/bpel/ordering'
+ xmlns:xsd='http://www.w3.org/2001/XMLSchema'
+ xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype">
+
+ <types>
+ <xs:schema version='1.0'
+ targetNamespace='http://jboss.org/bpel/ordering'
+ xmlns:tns='http://jboss.org/bpel/ordering'
+ xmlns:xs='http://www.w3.org/2001/XMLSchema'>
+
+ <xs:element name='createOrder' type='tns:createOrder' />
+ <xs:element name='createOrderResponse' type='tns:createOrderResponse' />
+ <xs:element name='getItemInfo' type='tns:getItemInfo' />
+ <xs:element name='getItemInfoResponse' type='tns:getItemInfoResponse' />
+ <xs:element name='setState' type='tns:setState' />
+ <xs:element name='setStateResponse' type='tns:setStateResponse' />
+
+ <xs:complexType name='getState'>
+ <xs:sequence>
+ <xs:element minOccurs='0' name='orderId' type='xs:long' />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name='getStateResponse'>
+ <xs:sequence>
+ <xs:element minOccurs='0' name='return' type='xs:string' />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name='setState'>
+ <xs:sequence>
+ <xs:element minOccurs='0' name='orderId' type='xs:long' />
+ <xs:element minOccurs='0' name='state' type='xs:string' />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name='setStateResponse'>
+ <xs:sequence>
+ <xs:element minOccurs='0' name='state' type='xs:string' />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name='createOrder'>
+ <xs:sequence>
+ <xs:element minOccurs='0' name='itemId' type='xs:long' />
+ <xs:element name='quantity' type='xs:int' />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name='createOrderResponse'>
+ <xs:sequence>
+ <xs:element minOccurs='0' name='return' type='xs:long' />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name='getItemInfo'>
+ <xs:sequence>
+ <xs:element minOccurs='0' name='id' type='xs:long' />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name='getItemInfoResponse'>
+ <xs:sequence>
+ <xs:element name='return' type='xs:int' />
+ </xs:sequence>
+ </xs:complexType>
+ </xs:schema>
+ </types>
+
+ <message name='GetItemInfoRequest'>
+ <part element='tns:getItemInfo' name='getItemInfo'/>
+ </message>
+ <message name='GetItemInfoResponse'>
+ <part element='tns:getItemInfoResponse' name='getItemInfoResponse'/>
+ </message>
+ <message name='CreateOrderRequest'>
+ <part element='tns:createOrder' name='createOrder'/>
+ </message>
+ <message name='CreateOrderResponse'>
+ <part element='tns:createOrderResponse' name='createOrderResponse'/>
+ </message>
+ <message name='SetOrderStateRequest'>
+ <part element='tns:setState' name='setState'/>
+ </message>
+ <message name='SetOrderStateResponse'>
+ <part element='tns:setStateResponse' name='setStateResponse'/>
+ </message>
+
+ <portType name='OrderingWS'>
+ <operation name='createOrder' parameterOrder='createOrder'>
+ <input message='tns:CreateOrderRequest'/>
+ <output message='tns:CreateOrderResponse'/>
+ </operation>
+ <operation name='getItemInfo' parameterOrder='getItemInfo'>
+ <input message='tns:GetItemInfoRequest'/>
+ <output message='tns:GetItemInfoResponse'/>
+ </operation>
+ <operation name='setState'>
+ <input message='tns:SetOrderStateRequest'/>
+ <output message='tns:SetOrderStateResponse'/>
+ </operation>
+ </portType>
+
+ <binding name='OrderingWSBinding' type='tns:OrderingWS'>
+ <soap:binding style='document' transport='http://schemas.xmlsoap.org/soap/http' />
+ <operation name='createOrder'>
+ <soap:operation soapAction='' />
+ <input>
+ <soap:body use='literal' />
+ </input>
+ <output>
+ <soap:body use='literal' />
+ </output>
+ </operation>
+ <operation name='getItemInfo'>
+ <soap:operation soapAction='' />
+ <input>
+ <soap:body use='literal' />
+ </input>
+ <output>
+ <soap:body use='literal' />
+ </output>
+ </operation>
+ <operation name='setState'>
+ <soap:operation soapAction='' />
+ <input>
+ <soap:body use='literal' />
+ </input>
+ <output>
+ <soap:body use='literal' />
+ </output>
+ </operation>
+ </binding>
+
+ <service name='OrderingService'>
+ <port binding='tns:OrderingWSBinding' name='OrderingWSPort'>
+ <soap:address location='http://127.0.0.1:8080/Ordering-Ordering-war/OrderingService' />
+ </port>
+ </service>
+
+ <plnk:partnerLinkType name="OrderingService_PartnerLink">
+ <plnk:role name="OrderingService_Provider" portType="tns:OrderingWS" />
+ <plnk:role name="OrderingService_Receiver" portType="tns:OrderingWS" />
+ </plnk:partnerLinkType>
+
+</definitions>
+
Added: trunk/samples/quickstart/order_management/bpelContent/bpel-deploy.xml
===================================================================
--- trunk/samples/quickstart/order_management/bpelContent/bpel-deploy.xml (rev 0)
+++ trunk/samples/quickstart/order_management/bpelContent/bpel-deploy.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deploy xmlns="http://www.apache.org/ode/schemas/dd/2007/03" xmlns:ordering="http://jboss.org/bpel/ordering" xmlns:samples="http://www.jboss.org/bpel/samples">
+ <process name="samples:Ordering">
+ <active>true</active>
+ <retired>false</retired>
+ <process-events generate="all"/>
+ <provide partnerLink="client">
+ <service name="samples:OrderingService" port="OrderingPort"/>
+ </provide>
+ <invoke partnerLink="ordering">
+ <service name="ordering:OrderingService" port="OrderingWSPort"/>
+ </invoke>
+ </process>
+</deploy>
\ No newline at end of file
Added: trunk/samples/quickstart/order_management/build.xml
===================================================================
--- trunk/samples/quickstart/order_management/build.xml (rev 0)
+++ trunk/samples/quickstart/order_management/build.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,122 @@
+<project name="Quickstart_bpel_ordering" default="deploy" basedir=".">
+
+ <description>
+ ${ant.project.name}
+ ${line.separator}
+ </description>
+
+ <!-- Import the base Ant build script... -->
+ <property file="../../../install/deployment.properties" />
+ <import file="../../common/base-build.xml"/>
+
+ <property name="version" value="1" />
+
+ <property name="server.dir" value="${org_jboss_as_home}/server/${org_jboss_as_config}"/>
+ <property name="conf.dir" value="${server.dir}/conf"/>
+ <property name="deploy.dir" value="${server.dir}/deploy"/>
+ <property name="server.lib.dir" value="${server.dir}/lib"/>
+
+ <property name="sample.jar.name" value="${ant.project.name}-${version}.jar" />
+ <property name="sample.ear.name" value="Ordering.ear"/>
+
+ <filterset id="messageData">
+ <filter token="ID" value="${id}"/>
+ <filter token="APPROVED" value="${approved}"/>
+ </filterset>
+
+ <target name="deployear">
+ <ant dir="Ordering-ejb" target="package"/>
+ <ant dir="Ordering-war" target="package"/>
+ <jar destfile="${deploy.dir}/${sample.ear.name}">
+ <fileset dir="Ordering-ejb/dist"/>
+ <fileset dir="Ordering-war/dist"/>
+ </jar>
+ </target>
+
+ <target name="deploy" depends="deployear">
+ <echo>Deploy ${ant.project.name}</echo>
+ <jar basedir="bpelContent" destfile="${deploy.dir}/${sample.jar.name}" />
+ </target>
+
+ <target name="undeployear">
+ <delete file="${deploy.dir}/${sample.ear.name}"/>
+ </target>
+
+ <target name="undeploy" depends="undeployear">
+ <echo>Undeploy ${ant.project.name}</echo>
+ <delete file="${deploy.dir}/${sample.jar.name}"/>
+ </target>
+
+ <target name="clean">
+ <delete dir="messages-filtered"/>
+ <ant dir="Ordering-ejb" target="clean"/>
+ <ant dir="Ordering-war" target="clean"/>
+ </target>
+
+ <target name="preparedb">
+ <sql url="jdbc:hsqldb:hsql://localhost:54123" driver="org.hsqldb.jdbcDriver" userid="sa" password="" src="sql/items.sql">
+ <classpath>
+ <pathelement location="${org_jboss_as_home}/common/lib/hsqldb.jar"/>
+ </classpath>
+ </sql>
+ </target>
+
+ <target name="getOrderState">
+ <sql url="jdbc:hsqldb:hsql://localhost:54123" driver="org.hsqldb.jdbcDriver" userid="sa" password="" print="true">
+ <![CDATA[
+ SELECT stte FROM bpel_ordering_order WHERE ${orderId} = id;
+ ]]>
+ <classpath>
+ <pathelement location="${org_jboss_as_home}/common/lib/hsqldb.jar"/>
+ </classpath>
+ </sql>
+ </target>
+
+ <target name="getOrders">
+ <sql url="jdbc:hsqldb:hsql://localhost:54123" driver="org.hsqldb.jdbcDriver" userid="sa" password="" print="true">
+ <![CDATA[
+ SELECT * FROM bpel_ordering_order;
+ ]]>
+ <classpath>
+ <pathelement location="${org_jboss_as_home}/common/lib/hsqldb.jar"/>
+ </classpath>
+ </sql>
+ </target>
+
+ <target name="getItems">
+ <sql url="jdbc:hsqldb:hsql://localhost:54123" driver="org.hsqldb.jdbcDriver" userid="sa" password="" print="true">
+ <![CDATA[
+ SELECT * FROM bpel_ordering_item;
+ ]]>
+ <classpath>
+ <pathelement location="${org_jboss_as_home}/common/lib/hsqldb.jar"/>
+ </classpath>
+ </sql>
+ </target>
+
+ <!-- -Did=${id} and -Dapproved=${approved} -->
+ <target name="sendapprove">
+ <mkdir dir="messages-filtered"/>
+
+ <copy file="messages/approve.xml" tofile="messages-filtered/approve.xml" overwrite="true" filtering="true">
+ <filterset refid="messageData" />
+ </copy>
+
+ <echo>Send test message to: ${ant.project.name}</echo>
+ <java classname="org.apache.ode.tools.sendsoap.cline.HttpSoapSender">
+ <arg value="http://localhost:8080/orderingWS"/>
+ <arg value="messages-filtered/approve.xml"/>
+ <classpath refid="rs-exec-classpath"/>
+ </java>
+ </target>
+
+ <target name="sendorder">
+ <echo>Send test message to: ${ant.project.name}</echo>
+ <java classname="org.apache.ode.tools.sendsoap.cline.HttpSoapSender">
+ <arg value="http://localhost:8080/orderingWS"/>
+ <arg value="messages/order.xml"/>
+ <classpath refid="rs-exec-classpath"/>
+ </java>
+ </target>
+
+</project>
Added: trunk/samples/quickstart/order_management/messages/approve.xml
===================================================================
--- trunk/samples/quickstart/order_management/messages/approve.xml (rev 0)
+++ trunk/samples/quickstart/order_management/messages/approve.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,9 @@
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sam="http://www.jboss.org/bpel/samples">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <sam:orderApproval>
+ <orderId>@ID@</orderId>
+ <approved>@APPROVED@</approved>
+ </sam:orderApproval>
+ </soapenv:Body>
+</soapenv:Envelope>
Added: trunk/samples/quickstart/order_management/messages/order.xml
===================================================================
--- trunk/samples/quickstart/order_management/messages/order.xml (rev 0)
+++ trunk/samples/quickstart/order_management/messages/order.xml 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,9 @@
+<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sam="http://www.jboss.org/bpel/samples">
+ <soapenv:Header/>
+ <soapenv:Body>
+ <sam:order>
+ <itemId>20</itemId>
+ <quantity>3</quantity>
+ </sam:order>
+ </soapenv:Body>
+</soapenv:Envelope>
Added: trunk/samples/quickstart/order_management/readme.txt
===================================================================
--- trunk/samples/quickstart/order_management/readme.txt (rev 0)
+++ trunk/samples/quickstart/order_management/readme.txt 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,49 @@
+Quickstart Examples - Level 3 - Order Management
+================================================
+
+This example demonstrates the use of a BPEL to coordinate an order management
+process. Each order has a particular stateful workflow, requiring the use
+of correlation to direct relevant invocations to the appropriate BPEL process
+instance that is managing the order.
+
+To deploy the example, open a command line window in the example's folder,
+and simply type 'ant deploy'. To undeploy, use the command 'ant undeploy'.
+
+This example uses a database to manage the orders. Therefore before being able
+to create and manage individual orders, we first need to prepare the database.
+This is achieved using the following command:
+
+ ant preparedb
+
+At any point you will be able to view the current list of orders, and their
+status, using the following command:
+
+ ant getOrders
+
+To create a new order, use the following command:
+
+ ant sendorder
+
+which will create an order in the database and return the id in the command
+response. Then the final step is to approve or reject the order using the
+following command:
+
+ ant sendapprove -Did=<order id> -Dapproved=true|false
+
+So if the order id in the response was 23, and you want to reject the order,
+you would perform the command:
+
+ ant sendapprove -Did=23 -Dapproved=false
+
+Don't forget to use the 'ant getOrders' command to review the orders in the
+database at different times.
+
+NOTE: The "ant deploy" command will by default deploy version 1 of the
+example to the server. If you wish to change the example, and redeploy,
+then you will need to update the version number in the build.xml, or
+override the version property, e.g. "ant -Dversion=2 deploy" (and similarly
+when undeploying "ant -Dversion=2 undeploy").
+
+Some handy URLs:
+http://localhost:8080/bpel-console is the BPEL console
+http://localhost:8080/orderingWS?wsdl is the URL to the BPEL process' WSDL
Added: trunk/samples/quickstart/order_management/sql/items.sql
===================================================================
--- trunk/samples/quickstart/order_management/sql/items.sql (rev 0)
+++ trunk/samples/quickstart/order_management/sql/items.sql 2010-11-05 14:31:37 UTC (rev 1085)
@@ -0,0 +1,4 @@
+INSERT INTO bpel_ordering_item VALUES (10, 'netbook', 1000);
+INSERT INTO bpel_ordering_item VALUES (20, 'car', 5000);
+INSERT INTO bpel_ordering_item VALUES (30, 'bag', 50);
+INSERT INTO bpel_ordering_item VALUES (40, 't-shirt', 8);
\ No newline at end of file
14 years, 11 months
riftsaw SVN: r1084 - trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache.
by riftsaw-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2010-11-05 04:31:16 -0400 (Fri, 05 Nov 2010)
New Revision: 1084
Modified:
trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCacheProvider.java
Log:
*RIFTSAW-282, using GUID to make sure it is unique.
Modified: trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCacheProvider.java
===================================================================
--- trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCacheProvider.java 2010-11-05 08:14:46 UTC (rev 1083)
+++ trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCacheProvider.java 2010-11-05 08:31:16 UTC (rev 1084)
@@ -22,6 +22,7 @@
import org.apache.ode.bpel.iapi.Cache;
import org.apache.ode.bpel.iapi.CacheProvider;
+import org.apache.ode.utils.GUID;
import org.jboss.cache.CacheFactory;
import org.jboss.cache.DefaultCacheFactory;
import org.jboss.cache.Fqn;
@@ -37,8 +38,6 @@
public static final String RIFTSAW_NODE_PREFIX = "jboss/riftsaw/";
- private static int counter = 1;
-
private CacheManager cacheManager;
private org.jboss.cache.Cache cache;
@@ -52,10 +51,9 @@
public <K, V> Cache<K, V> createCache() {
- String fqnString = RIFTSAW_NODE_PREFIX + String.valueOf(counter);
+ String fqnString = RIFTSAW_NODE_PREFIX + new GUID().toString();
Fqn<String> theFqn = Fqn.fromString(fqnString);
Cache<K, V> result = new JBossCache<K, V>(cache, theFqn);
- counter ++;
return result;
}
14 years, 11 months
riftsaw SVN: r1083 - in trunk: distribution/src/main/release/db/cache and 7 other directories.
by riftsaw-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2010-11-05 04:14:46 -0400 (Fri, 05 Nov 2010)
New Revision: 1083
Added:
trunk/distribution/src/main/release/db/cache/
trunk/distribution/src/main/release/db/cache/default.properties
trunk/distribution/src/main/release/db/cache/jbosscache.properties
trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/
trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCache.java
trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCacheProvider.java
trunk/runtime/clustering/src/main/resources/META-INF/riftsaw-cache-manager-jboss-beans.xml
Modified:
trunk/distribution/src/main/release/db/bpel.properties
trunk/distribution/src/main/release/install/build.xml
trunk/runtime/clustering/pom.xml
trunk/runtime/clustering/src/main/resources/META-INF/jboss-beans.xml
trunk/runtime/engine/src/main/java/org/apache/ode/store/RiftSawProcessStore.java
trunk/runtime/engine/src/main/java/org/jboss/soa/bpel/runtime/engine/ode/BPELEngineImpl.java
Log:
*RIFTSAW-282, deployed jboss cache based implementation in clustering environment.
Modified: trunk/distribution/src/main/release/db/bpel.properties
===================================================================
--- trunk/distribution/src/main/release/db/bpel.properties 2010-11-05 04:12:41 UTC (rev 1082)
+++ trunk/distribution/src/main/release/db/bpel.properties 2010-11-05 08:14:46 UTC (rev 1083)
@@ -57,6 +57,7 @@
bpel.dao.factory=org.apache.ode.dao.jpa.hibernate.BpelDAOConnectionFactoryImpl
bpel.dao.factory.store=org.apache.ode.dao.jpa.hibernate.ConfStoreDAOConnectionFactoryImpl
bpel.dao.factory.scheduler=org.apache.ode.dao.jpa.hibernate.SchedulerDAOConnectionFactoryImpl
+bpel.cache.provider=(a)cache.provider@
## Transaction Factory
## default is org.apache.ode.il.EmbeddedGeronimoFactory
Added: trunk/distribution/src/main/release/db/cache/default.properties
===================================================================
--- trunk/distribution/src/main/release/db/cache/default.properties (rev 0)
+++ trunk/distribution/src/main/release/db/cache/default.properties 2010-11-05 08:14:46 UTC (rev 1083)
@@ -0,0 +1 @@
+cache.provider=org.apache.ode.il.cache.DefaultCacheProvider
\ No newline at end of file
Added: trunk/distribution/src/main/release/db/cache/jbosscache.properties
===================================================================
--- trunk/distribution/src/main/release/db/cache/jbosscache.properties (rev 0)
+++ trunk/distribution/src/main/release/db/cache/jbosscache.properties 2010-11-05 08:14:46 UTC (rev 1083)
@@ -0,0 +1 @@
+cache.provider=org.jboss.soa.bpel.cache.JBossCacheProvider
\ No newline at end of file
Modified: trunk/distribution/src/main/release/install/build.xml
===================================================================
--- trunk/distribution/src/main/release/install/build.xml 2010-11-05 04:12:41 UTC (rev 1082)
+++ trunk/distribution/src/main/release/install/build.xml 2010-11-05 08:14:46 UTC (rev 1083)
@@ -43,6 +43,14 @@
<property name="modules" value="../modules" />
<property name="samples" value="../samples" />
+ <condition property="cache.provider" value="jbosscache">
+ <istrue value="${clustering.support}"/>
+ </condition>
+
+ <condition property="cache.provider" value="default">
+ <isfalse value="${clustering.support}" />
+ </condition>
+
<target name="check.deploy.props">
<condition property="as.configured">
<and>
@@ -85,6 +93,7 @@
overwrite="true">
<filterset filtersfile="../db/jdbc/${database}.properties" />
<filterset filtersfile="../db/wsstack/${ws.stack}.properties" />
+ <filterset filtersfile="../db/cache/${cache.provider}.properties" />
</copy>
<copy file="../db/datasource/bpel-${database}-ds.xml"
@@ -137,6 +146,8 @@
<delete dir="${deploy.dir}/bpel-console" />
<delete file="${server.lib.dir}/gwt-console-server-integration.jar"/>
<delete file="${server.lib.dir}/gwt-console-rpc.jar"/>
+
+ <antcall target="undeploy-clustering" />
</target>
@@ -230,8 +241,28 @@
<include name="riftsaw-clustering-*.jar"/>
</fileset>
</copy>
+
+ <move file="${deploy.dir}/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml"
+ toFile="${deploy.dir}/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml.old" >
+ </move>
+
+ <copy file="../modules/clustering/META-INF/riftsaw-cache-manager-jboss-beans.xml"
+ toFile="${deploy.dir}/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml"
+ overwrite="true">
+ </copy>
+
+
</target>
+ <!-- undeploy clustering specific configuration.-->
+ <target name="undeploy-clustering" if="clustering.support">
+ <move file="${deploy.dir}/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml.old"
+ toFile="${deploy.dir}/cluster/jboss-cache-manager.sar/META-INF/jboss-cache-manager-jboss-beans.xml" overwrite="true">
+ </move>
+ </target>
+
+
+
<target name="check.juddi">
<condition property="is.juddi.duplicated">
<available file="${deploy.dir}/juddi-service.sar" />
Modified: trunk/runtime/clustering/pom.xml
===================================================================
--- trunk/runtime/clustering/pom.xml 2010-11-05 04:12:41 UTC (rev 1082)
+++ trunk/runtime/clustering/pom.xml 2010-11-05 08:14:46 UTC (rev 1083)
@@ -16,6 +16,7 @@
<properties>
<jboss.clustering.version>5.1.0.GA</jboss.clustering.version>
+ <jboss.cache.version>3.1.0.GA</jboss.cache.version>
</properties>
<dependencies>
@@ -31,8 +32,16 @@
<dependency>
<groupId>org.jboss.soa.bpel.runtime</groupId>
<artifactId>riftsaw-engine</artifactId>
- </dependency>
+ </dependency>
+
<dependency>
+ <groupId>org.jboss.cache</groupId>
+ <artifactId>jbosscache-core</artifactId>
+ <version>${jboss.cache.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
@@ -47,7 +56,7 @@
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<excludes>
- <exclude>**/jboss-beans.xml</exclude>
+ <exclude>**/*jboss-beans.xml</exclude>
</excludes>
</configuration>
</plugin>
Added: trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCache.java
===================================================================
--- trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCache.java (rev 0)
+++ trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCache.java 2010-11-05 08:14:46 UTC (rev 1083)
@@ -0,0 +1,76 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+
+package org.jboss.soa.bpel.cache;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+import org.apache.ode.bpel.iapi.Cache;
+import org.jboss.cache.Fqn;
+
+/**
+ * JBossCache implementation of {@Cache} API.
+ *
+ * @author jeffyu
+ *
+ */
+public class JBossCache<K, V> implements Cache<K, V> {
+
+ private final org.jboss.cache.Cache<K, V> cache;
+
+ private final Fqn<String> fqn;
+
+ public JBossCache(org.jboss.cache.Cache<K, V> cache, Fqn<String> fqn) {
+ this.cache = cache;
+ this.fqn = fqn;
+ }
+
+ public boolean containsKey(K key) {
+ if (cache.getData(fqn) == null || cache.getData(fqn).size() < 1) {
+ return false;
+ }
+ return cache.getData(fqn).containsKey(key);
+ }
+
+ public V get(K key) {
+ return cache.get(fqn, key);
+ }
+
+ public Set<K> keySet() {
+ Set<K> keyset = cache.getKeys(fqn);
+ if (keyset == null) {
+ keyset = new HashSet<K>();
+ }
+ return keyset;
+ }
+
+ public V put(K key, V value) {
+ return cache.put(fqn, key, value);
+ }
+
+ public V remove(K key) {
+ return cache.remove(fqn, key);
+ }
+
+ public Collection<V> values() {
+ return cache.getData(fqn).values();
+ }
+
+}
Added: trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCacheProvider.java
===================================================================
--- trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCacheProvider.java (rev 0)
+++ trunk/runtime/clustering/src/main/java/org/jboss/soa/bpel/cache/JBossCacheProvider.java 2010-11-05 08:14:46 UTC (rev 1083)
@@ -0,0 +1,66 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2010, Red Hat Middleware LLC, and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+package org.jboss.soa.bpel.cache;
+
+import javax.naming.Context;
+import javax.naming.InitialContext;
+
+import org.apache.ode.bpel.iapi.Cache;
+import org.apache.ode.bpel.iapi.CacheProvider;
+import org.jboss.cache.CacheFactory;
+import org.jboss.cache.DefaultCacheFactory;
+import org.jboss.cache.Fqn;
+import org.jboss.ha.cachemanager.CacheManager;
+
+/**
+ *
+ *
+ * @author jeffyu
+ *
+ */
+public class JBossCacheProvider implements CacheProvider {
+
+ public static final String RIFTSAW_NODE_PREFIX = "jboss/riftsaw/";
+
+ private static int counter = 1;
+
+ private CacheManager cacheManager;
+
+ private org.jboss.cache.Cache cache;
+
+ public void start() throws Exception {
+ Context ctx = new InitialContext();
+ cacheManager = (CacheManager) ctx.lookup("java:CacheManager");
+ cache = cacheManager.getCache("riftsaw-cache", true);
+ cache.start();
+ }
+
+ public <K, V> Cache<K, V> createCache() {
+
+ String fqnString = RIFTSAW_NODE_PREFIX + String.valueOf(counter);
+ Fqn<String> theFqn = Fqn.fromString(fqnString);
+ Cache<K, V> result = new JBossCache<K, V>(cache, theFqn);
+ counter ++;
+ return result;
+ }
+
+ public void stop() throws Exception {
+ cacheManager.releaseCache("riftsaw-cache");
+ }
+
+}
Modified: trunk/runtime/clustering/src/main/resources/META-INF/jboss-beans.xml
===================================================================
--- trunk/runtime/clustering/src/main/resources/META-INF/jboss-beans.xml 2010-11-05 04:12:41 UTC (rev 1082)
+++ trunk/runtime/clustering/src/main/resources/META-INF/jboss-beans.xml 2010-11-05 08:14:46 UTC (rev 1083)
@@ -18,6 +18,7 @@
<depends>jboss:service=Naming</depends>
<depends>BPELDatabaseInitializer</depends>
<depends>BPELDeployer</depends>
+ <depends>CacheManager</depends>
</bean>
<!--
Added: trunk/runtime/clustering/src/main/resources/META-INF/riftsaw-cache-manager-jboss-beans.xml
===================================================================
--- trunk/runtime/clustering/src/main/resources/META-INF/riftsaw-cache-manager-jboss-beans.xml (rev 0)
+++ trunk/runtime/clustering/src/main/resources/META-INF/riftsaw-cache-manager-jboss-beans.xml 2010-11-05 08:14:46 UTC (rev 1083)
@@ -0,0 +1,1529 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<deployment xmlns="urn:jboss:bean-deployer:2.0">
+
+ <!-- Factory/registry for JBoss Cache and PojoCache instances used in the AS -->
+ <bean name="CacheManager" class="org.jboss.ha.cachemanager.CacheManager">
+
+ <annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.cache:service=CacheManager", exposedInterface=org.jboss.ha.cachemanager.CacheManagerMBean.class, registerDirectly=true)</annotation>
+
+ <!-- This doesn't seem to work, so the service binds itself for now
+ <annotation>@org.jboss.aop.microcontainer.aspects.jndi.JndiBinding(name="java:CacheManager")</annotation>
+ -->
+ <property name="jndiName">java:CacheManager</property>
+
+ <property name="configurationRegistry"><inject bean="CacheConfigurationRegistry"/></property>
+ <property name="channelFactory"><inject bean="JChannelFactory"/></property>
+
+ <!-- Aliases for cache names. Allows caches to be shared across
+ services that may expect different cache config names. -->
+ <property name="configAliases">
+ <map keyClass="java.lang.String" valueClass="java.lang.String">
+ <!-- Use the HAPartition cache for ClusteredSSO caching -->
+ <entry>
+ <key>clustered-sso</key>
+ <value>ha-partition</value>
+ </entry>
+ <!-- Handle the legacy name for the EJB3 SFSB cache -->
+ <entry>
+ <key>jboss.cache:service=EJB3SFSBClusteredCache</key>
+ <value>sfsb-cache</value>
+ </entry>
+ <!-- Handle the legacy name for the EJB3 Entity cache -->
+ <entry>
+ <key>jboss.cache:service=EJB3EntityTreeCache</key>
+ <value>mvcc-shared</value>
+ </entry>
+ </map>
+ </property>
+
+ <!-- Start these caches as part of the start of this CacheManager
+ <property name="eagerStartCaches">
+ <set>
+ <value>ha-partition</value>
+ </set>
+ </property>
+ -->
+
+ </bean>
+
+ <!--
+ | Registry of named JBoss Cache configurations. Users of the CacheManager
+ | request a cache with a particular configuration by providing the name
+ | of one of these configurations.
+ -->
+ <bean name="CacheConfigurationRegistry" class="org.jboss.ha.cachemanager.DependencyInjectedConfigurationRegistry">
+
+ <!-- If users wish to add configs using a more familiar JBC config format
+ they can add them to a cache-configs.xml file specified by this property.
+ However, use of the microcontainer format used below is recommended.
+ <property name="configResource">META-INF/jboss-cache-configs.xml</property>
+ -->
+
+ <!-- The configurations. A Map<String name, Configuration config> -->
+ <property name="newConfigurations">
+ <map keyClass="java.lang.String" valueClass="org.jboss.cache.config.Configuration">
+
+ <!-- The standard configurations follow. You can add your own and/or edit these. -->
+
+ <!-- Standard cache used for web sessions -->
+ <entry><key>standard-session-cache</key>
+ <value>
+ <bean name="StandardSessionCacheConfig" class="org.jboss.cache.config.Configuration">
+
+ <!-- Provides batching functionality for caches that don't want to interact with regular JTA Transactions -->
+ <property name="transactionManagerLookupClass">org.jboss.cache.transaction.BatchModeTransactionManagerLookup</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-SessionCache</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because we are using asynchronous replication. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <property name="fetchInMemoryState">true</property>
+
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <property name="isolationLevel">REPEATABLE_READ</property>
+ <property name="useLockStriping">false</property>
+ <property name="cacheMode">REPL_ASYNC</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. Make this longer
+ than lockAcquisitionTimeout.-->
+ <property name="syncReplTimeout">17500</property>
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Not needed for a web session cache that doesn't use FIELD -->
+ <property name="useRegionBasedMarshalling">false</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">false</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="exposeManagementStatistics">true</property>
+
+ <property name="buddyReplicationConfig">
+ <bean class="org.jboss.cache.config.BuddyReplicationConfig">
+
+ <!-- Just set to true to turn on buddy replication -->
+ <property name="enabled">false</property>
+
+ <!-- A way to specify a preferred replication group. We try
+ and pick a buddy who shares the same pool name (falling
+ back to other buddies if not available). -->
+ <property name="buddyPoolName">default</property>
+
+ <property name="buddyCommunicationTimeout">17500</property>
+
+ <!-- Do not change these -->
+ <property name="autoDataGravitation">false</property>
+ <property name="dataGravitationRemoveOnFind">true</property>
+ <property name="dataGravitationSearchBackupTrees">true</property>
+
+ <property name="buddyLocatorConfig">
+ <bean class="org.jboss.cache.buddyreplication.NextMemberBuddyLocatorConfig">
+ <!-- The number of backup copies we maintain -->
+ <property name="numBuddies">1</property>
+ <!-- Means that each node will *try* to select a buddy on
+ a different physical host. If not able to do so
+ though, it will fall back to colocated nodes. -->
+ <property name="ignoreColocatedBuddies">true</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="cacheLoaderConfig">
+ <bean class="org.jboss.cache.config.CacheLoaderConfig">
+ <!-- Do not change these -->
+ <property name="passivation">true</property>
+ <property name="shared">false</property>
+
+ <property name="individualCacheLoaderConfigs">
+ <list>
+ <bean class="org.jboss.cache.loader.FileCacheLoaderConfig">
+ <!-- Where passivated sessions are stored -->
+ <property name="location">${jboss.server.data.dir}${/}session</property>
+ <!-- Do not change these -->
+ <property name="async">false</property>
+ <property name="fetchPersistentState">true</property>
+ <property name="purgeOnStartup">true</property>
+ <property name="ignoreModifications">false</property>
+ <property name="checkCharacterPortability">false</property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- Appropriate for web sessions with FIELD granularity -->
+ <entry><key>field-granularity-session-cache</key>
+ <value>
+
+ <bean name="FieldSessionCacheConfig" class="org.jboss.cache.config.Configuration">
+
+ <!-- Provides batching functionality for caches that don't want to interact with regular JTA Transactions -->
+ <property name="transactionManagerLookupClass">org.jboss.cache.transaction.BatchModeTransactionManagerLookup</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-FieldSessionCache</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because we are using asynchronous replication. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <property name="fetchInMemoryState">true</property>
+
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <property name="isolationLevel">REPEATABLE_READ</property>
+ <property name="useLockStriping">false</property>
+ <property name="cacheMode">REPL_ASYNC</property>
+
+ <property name="syncReplTimeout">17500</property>
+ <property name="lockAcquisitionTimeout">15000</property>
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Field granularity requires region-based marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="exposeManagementStatistics">true</property>
+
+ <property name="buddyReplicationConfig">
+ <bean class="org.jboss.cache.config.BuddyReplicationConfig">
+
+ <!-- Just set to true to turn on buddy replication -->
+ <property name="enabled">false</property>
+ <!-- A way to specify a preferred replication group. We try
+ and pick a buddy who shares the same pool name (falling
+ back to other buddies if not available). -->
+ <property name="buddyPoolName">default</property>
+ <property name="buddyCommunicationTimeout">17500</property>
+
+ <!-- Do not change these -->
+ <property name="autoDataGravitation">false</property>
+ <property name="dataGravitationRemoveOnFind">true</property>
+ <property name="dataGravitationSearchBackupTrees">true</property>
+
+ <property name="buddyLocatorConfig">
+ <bean class="org.jboss.cache.buddyreplication.NextMemberBuddyLocatorConfig">
+ <!-- The number of backup nodes we maintain -->
+ <property name="numBuddies">1</property>
+ <!-- Means that each node will *try* to select a buddy on
+ a different physical host. If not able to do so
+ though, it will fall back to colocated nodes. -->
+ <property name="ignoreColocatedBuddies">true</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="cacheLoaderConfig">
+ <bean class="org.jboss.cache.config.CacheLoaderConfig">
+ <!-- Do not change these -->
+ <property name="passivation">true</property>
+ <property name="shared">false</property>
+
+ <property name="individualCacheLoaderConfigs">
+ <list>
+ <bean class="org.jboss.cache.loader.FileCacheLoaderConfig">
+ <!-- Where passivated sessions are stored -->
+ <property name="location">${jboss.server.data.dir}${/}field-session</property>
+ <!-- Do not change these -->
+ <property name="async">false</property>
+ <property name="fetchPersistentState">true</property>
+ <property name="purgeOnStartup">true</property>
+ <property name="ignoreModifications">false</property>
+ <property name="checkCharacterPortability">false</property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+
+ </bean>
+ </value>
+ </entry>
+
+ <!-- Standard cache used for EJB3 SFSB caching -->
+ <entry><key>sfsb-cache</key>
+ <value>
+ <bean name="StandardSFSBCacheConfig" class="org.jboss.cache.config.Configuration">
+
+ <!-- No transaction manager lookup -->
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-SFSBCache</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because we are using asynchronous replication. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <property name="fetchInMemoryState">true</property>
+
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <property name="isolationLevel">REPEATABLE_READ</property>
+ <property name="useLockStriping">false</property>
+ <property name="cacheMode">REPL_ASYNC</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. Make this longer
+ than lockAcquisitionTimeout.-->
+ <property name="syncReplTimeout">17500</property>
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!--
+ SFSBs use region-based marshalling to provide for partial state
+ transfer during deployment/undeployment.
+ -->
+ <property name="useRegionBasedMarshalling">false</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">false</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="exposeManagementStatistics">true</property>
+
+ <property name="buddyReplicationConfig">
+ <bean class="org.jboss.cache.config.BuddyReplicationConfig">
+
+ <!-- Just set to true to turn on buddy replication -->
+ <property name="enabled">false</property>
+
+ <!-- A way to specify a preferred replication group. We try
+ and pick a buddy who shares the same pool name (falling
+ back to other buddies if not available). -->
+ <property name="buddyPoolName">default</property>
+
+ <property name="buddyCommunicationTimeout">17500</property>
+
+ <!-- Do not change these -->
+ <property name="autoDataGravitation">false</property>
+ <property name="dataGravitationRemoveOnFind">true</property>
+ <property name="dataGravitationSearchBackupTrees">true</property>
+
+ <property name="buddyLocatorConfig">
+ <bean class="org.jboss.cache.buddyreplication.NextMemberBuddyLocatorConfig">
+ <!-- The number of backup nodes we maintain -->
+ <property name="numBuddies">1</property>
+ <!-- Means that each node will *try* to select a buddy on
+ a different physical host. If not able to do so
+ though, it will fall back to colocated nodes. -->
+ <property name="ignoreColocatedBuddies">true</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="cacheLoaderConfig">
+ <bean class="org.jboss.cache.config.CacheLoaderConfig">
+ <!-- Do not change these -->
+ <property name="passivation">true</property>
+ <property name="shared">false</property>
+
+ <property name="individualCacheLoaderConfigs">
+ <list>
+ <bean class="org.jboss.cache.loader.FileCacheLoaderConfig">
+ <!-- Where passivated sessions are stored -->
+ <property name="location">${jboss.server.data.dir}${/}sfsb</property>
+ <!-- Do not change these -->
+ <property name="async">false</property>
+ <property name="fetchPersistentState">true</property>
+ <property name="purgeOnStartup">true</property>
+ <property name="ignoreModifications">false</property>
+ <property name="checkCharacterPortability">false</property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+
+ <!-- EJBs use JBoss Cache eviction -->
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </property>
+ <!-- EJB3 integration code will programatically create
+ other regions as beans are deployed -->
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!--
+ Appropriate for the HAPartition-based services, e.g. DistributedState,
+ HA-JNDI. Also valid for use by the JBossWeb ClusteredSingleSignOn valve.
+ -->
+ <entry><key>ha-partition</key>
+ <value>
+
+ <bean name="HAPartitionCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Provides batching functionality for caches that don't want to interact with regular JTA Transactions -->
+ <property name="transactionManagerLookupClass">org.jboss.cache.transaction.BatchModeTransactionManagerLookup</property>
+
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-HAPartitionCache</property>
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <property name="fetchInMemoryState">true</property>
+
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <property name="isolationLevel">REPEATABLE_READ</property>
+ <property name="useLockStriping">false</property>
+ <property name="cacheModeString">REPL_SYNC</property>
+
+ <property name="syncReplTimeout">17500</property>
+ <property name="lockAcquisitionTimeout">15000</property>
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <property name="useRegionBasedMarshalling">false</property>
+ <property name="inactiveOnStartup">false</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="exposeManagementStatistics">true</property>
+ </bean>
+ </value>
+ </entry>
+
+ <!--
+ Following are JBoss Cache configurations suitable for different
+ Hibernate 2nd Level Cache uses (e.g. entities vs. queries).
+
+ In all cases, TransactionManager configuration not required.
+ Hibernate will plug in its own transaction manager integration.
+ -->
+
+ <!-- A config appropriate for entity/collection caching that uses MVCC locking -->
+ <entry><key>mvcc-entity</key>
+ <value>
+ <bean name="MVCCEntityCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">MVCC</property>
+ <!-- READ_COMMITTED is as strong as necessary for most
+ 2nd Level Cache use cases. -->
+ <property name="isolationLevel">READ_COMMITTED</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Mode of communication with peer caches.
+ INVALIDATION_SYNC is highly recommended as the mode for use
+ with entity and collection caches. -->
+ <property name="cacheMode">INVALIDATION_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-mvcc-entity</property>
+ <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+ slightly better (no JGroups FC) but we stick with udp to
+ help ensure this cache and others like timestamps-cache
+ that require FC can use the same underlying JGroups resources. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Whether or not to fetch state on joining a cluster. -->
+ <property name="fetchInMemoryState">false</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- A config appropriate for entity/collection caching that uses optimistic locking. -->
+ <entry><key>optimistic-entity</key>
+ <value>
+ <bean name="OptimisticEntityCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">OPTIMISTIC</property>
+
+ <!-- Mode of communication with peer caches.
+ INVALIDATION_SYNC is highly recommended as the mode for use
+ with entity and collection caches. -->
+ <property name="cacheMode">INVALIDATION_SYNC</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-opt-entity</property>
+ <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+ slightly better (no JGroups FC) but we stick with udp to
+ help ensure this cache and others like timestamps-cache
+ that require FC can use the same underlying JGroups resources. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Whether or not to fetch state on joining a cluster. -->
+ <property name="fetchInMemoryState">false</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- A config appropriate for entity/collection caching that uses pessimistic locking -->
+ <entry><key>pessimistic-entity</key>
+ <value>
+ <bean name="PessimisticEntityCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <!-- READ_COMMITTED is as strong as necessary for most
+ 2nd Level Cache use cases. -->
+ <property name="isolationLevel">READ_COMMITTED</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Mode of communication with peer caches.
+ INVALIDATION_SYNC is highly recommended as the mode for use
+ with entity and collection caches. -->
+ <property name="cacheMode">INVALIDATION_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-pess-entity</property>
+ <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+ slightly better (no JGroups FC) but we stick with udp to
+ help ensure this cache and others like timestamps-cache
+ that require FC can use the same underlying JGroups resources. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Whether or not to fetch state on joining a cluster. -->
+ <property name="fetchInMemoryState">false</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- Same as "mvcc-entity" but here we use REPEATABLE_READ
+ instead of READ_COMMITTED. REPEATABLE_READ is only useful if the
+ application evicts/clears entities from the Hibernate Session and
+ then expects to repeatably re-read them in the same transaction.
+ Otherwise, the Session's internal cache provides a repeatable-read
+ semantic. Before choosing this config, carefully read the docs
+ and make sure you really need REPEATABLE_READ. -->
+ <entry><key>mvcc-entity-repeatable</key>
+ <value>
+ <bean name="MVCCEntityRepeatableCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">MVCC</property>
+ <!-- Here we use REPEATABLE_READ. -->
+ <property name="isolationLevel">READ_COMMITTED</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Mode of communication with peer caches.
+ INVALIDATION_SYNC is highly recommended as the mode for use
+ with entity and collection caches. -->
+ <property name="cacheMode">INVALIDATION_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-mvcc-entity-rr</property>
+ <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+ slightly better (no JGroups FC) but we stick with udp to
+ help ensure this cache and others like timestamps-cache
+ that require FC can use the same underlying JGroups resources. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Whether or not to fetch state on joining a cluster. -->
+ <property name="fetchInMemoryState">false</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- Same as "pessimistic-entity" but here we use REPEATABLE_READ
+ instead of READ_COMMITTED. REPEATABLE_READ is only useful if the
+ application evicts/clears entities from the Hibernate Session and
+ then expects to repeatably re-read them in the same transaction.
+ Otherwise, the Session's internal cache provides a repeatable-read
+ semantic. Before choosing this config, carefully read the docs
+ and make sure you really need REPEATABLE_READ.
+ -->
+ <entry><key>pessimistic-entity-repeatable</key>
+ <value>
+ <bean name="PessimisticEntityRepeatableCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <property name="isolationLevel">REPEATABLE_READ</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Mode of communication with peer caches.
+ INVALIDATION_SYNC is highly recommended as the mode for use
+ with entity and collection caches. -->
+ <property name="cacheMode">INVALIDATION_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-pess-entity-rr</property>
+ <!-- Use a UDP (multicast) based stack. A udp-sync stack might be
+ slightly better (no JGroups FC) but we stick with udp to
+ help ensure this cache and others like timestamps-cache
+ that require FC can use the same underlying JGroups resources. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Whether or not to fetch state on joining a cluster. -->
+ <property name="fetchInMemoryState">false</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- A config appropriate for query caching. Does not replicate
+ queries. DO NOT STORE TIMESTAMPS IN THIS CACHE. -->
+ <entry><key>local-query</key>
+ <value>
+ <bean name="LocalQueryCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">OPTIMISTIC</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- LOCAL means don't communicate with other caches. -->
+ <property name="cacheMode">LOCAL</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- A query cache that replicates querie results. Replication is asynchronous.
+ DO NOT STORE TIMESTAMPS IN THIS CACHE as no initial state transfer
+ is performed. -->
+ <entry><key>replicated-query</key>
+ <value>
+ <bean name="ReplicatedQueryCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">OPTIMISTIC</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Mode of communication with peer caches.
+ REPL_ASYNC means replicate but sender does not block waiting for
+ peers to acknowledge applying the change. Valid for queries as
+ the timestamp cache mechanism will allow Hibernate to discard
+ out-of-date queries. -->
+ <property name="cacheMode">REPL_ASYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-query</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because timestamp communication will not require a synchronous response. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Whether or not to fetch state on joining a cluster. -->
+ <property name="fetchInMemoryState">false</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- Optimized for timestamp caching. A clustered timestamp cache
+ is required if query caching is used, even if the query cache
+ itself is configured with CacheMode=LOCAL.
+ -->
+ <entry><key>timestamps-cache</key>
+ <value>
+ <bean name="TimestampsCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">MVCC</property>
+ <!-- READ_COMMITTED is as strong as necessary -->
+ <property name="isolationLevel">READ_COMMITTED</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Cannot be INVALIDATION. ASYNC for improved performance. -->
+ <property name="cacheMode">REPL_ASYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-timestamps</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because timestamp communication will not require a synchronous response. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Used for timestamps, so must fetch state. -->
+ <property name="fetchInMemoryState">true</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <!-- We should never evict timestamps, so eviction is disabled -->
+
+ </bean>
+ </value>
+ </entry>
+
+ <!-- A config appropriate for a cache that's shared for
+ entity, collection, query and timestamp caching. Not an advised
+ configuration, since it requires cache mode REPL_SYNC, which is the
+ least efficient mode. Also requires a full state transfer at startup,
+ which can be expensive. Uses mvcc locking. -->
+ <entry><key>mvcc-shared</key>
+ <value>
+ <bean name="MVCCSharedCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">MVCC</property>
+ <!-- READ_COMMITTED is as strong as necessary for most
+ 2nd Level Cache use cases. -->
+ <property name="isolationLevel">READ_COMMITTED</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Must use REPL since used for timestamp caching.
+ Must use SYNC to maintain cache coherency for entities. -->
+ <property name="cacheMode">REPL_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-mvcc-shared</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because timestamp communication will not require a synchronous response. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Used for timestamps, so must fetch state. -->
+ <property name="fetchInMemoryState">true</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- A config appropriate for a cache that's shared for
+ entity, collection, query and timestamp caching. Not an advised
+ configuration, since it requires cache mode REPL_SYNC, which is the
+ least efficient mode. Also requires a full state transfer at startup,
+ which can be expensive. Uses optimistic locking -->
+ <entry><key>optimistic-shared</key>
+ <value>
+ <bean name="OptimisticSharedCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">OPTIMISTIC</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Must use REPL since used for timestamp caching.
+ Must use SYNC to maintain cache coherency for entities. -->
+ <property name="cacheMode">REPL_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-opt-shared</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because timestamp communication will not require a synchronous response. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Used for timestamps, so must fetch state. -->
+ <property name="fetchInMemoryState">true</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- A config appropriate for a cache that's shared for
+ entity, collection, query and timestamp caching. Not an advised
+ configuration, since it requires cache mode REPL_SYNC, which is the
+ least efficient mode. Also requires a full state transfer at startup,
+ which can be expensive. Uses pessmistic locking. -->
+ <entry><key>pessimistic-shared</key>
+ <value>
+ <bean name="PessimisticSharedCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <!-- READ_COMMITTED is as strong as necessary for most
+ 2nd Level Cache use cases. -->
+ <property name="isolationLevel">READ_COMMITTED</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Must use REPL since used for timestamp caching.
+ Must use SYNC to maintain cache coherency for entities. -->
+ <property name="cacheMode">REPL_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-pess-shared</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because timestamp communication will not require a synchronous response. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Used for timestamps, so must fetch state. -->
+ <property name="fetchInMemoryState">true</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- Same as "mvcc-shared" but here we use REPEATABLE_READ
+ instead of READ_COMMITTED. REPEATABLE_READ is only useful if the
+ application evicts/clears entities from the Hibernate Session and
+ then expects to repeatably re-read them in the same transaction.
+ Otherwise, the Session's internal cache provides a repeatable-read
+ semantic. Before choosing this config, carefully read the docs
+ and make sure you really need REPEATABLE_READ. -->
+ <entry><key>mvcc-shared-repeatable</key>
+ <value>
+ <bean name="MVCCSharedRepeatableCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">MVCC</property>
+ <!-- READ_COMMITTED is as strong as necessary for most
+ 2nd Level Cache use cases. -->
+ <property name="isolationLevel">REPEATABLE_READ</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Must use REPL since used for timestamp caching.
+ Must use SYNC to maintain cache coherency for entities. -->
+ <property name="cacheMode">REPL_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-mvcc-shared-rr</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because timestamp communication will not require a synchronous response. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Used for timestamps, so must fetch state. -->
+ <property name="fetchInMemoryState">true</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- Same as "pessimistic-shared" but here we use REPEATABLE_READ
+ instead of READ_COMMITTED. REPEATABLE_READ is only useful if the
+ application evicts/clears entities from the Hibernate Session and
+ then expects to repeatably re-read them in the same transaction.
+ Otherwise, the Session's internal cache provides a repeatable-read
+ semantic. Before choosing this config, carefully read the docs
+ and make sure you really need REPEATABLE_READ. -->
+ <entry><key>pessimistic-shared-repeatable</key>
+ <value>
+ <bean name="PessimisticSharedRepeatableCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Node locking scheme -->
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <property name="isolationLevel">REPEATABLE_READ</property>
+ <property name="useLockStriping">false</property>
+
+ <!-- Must use REPL since used for timestamp caching.
+ Must use SYNC to maintain cache coherency for entities. -->
+ <property name="cacheMode">REPL_SYNC</property>
+
+ <!-- Name of cluster. Needs to be the same for all members -->
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-pess-shared-rr</property>
+ <!-- Use a UDP (multicast) based stack. Need JGroups flow control (FC)
+ because timestamp communication will not require a synchronous response. -->
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <!-- Used for timestamps, so must fetch state. -->
+ <property name="fetchInMemoryState">true</property>
+
+ <!-- The max amount of time (in milliseconds) we wait until the
+ state (ie. the contents of the cache) are retrieved from
+ existing members at startup. Ignored if FetchInMemoryState=false. -->
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <!-- Number of milliseconds to wait until all responses for a
+ synchronous call have been received. -->
+ <property name="syncReplTimeout">17500</property>
+
+ <!-- Max number of milliseconds to wait for a lock acquisition -->
+ <property name="lockAcquisitionTimeout">15000</property>
+
+ <!-- Hibernate 2LC can replicate custom types, so we use marshalling -->
+ <property name="useRegionBasedMarshalling">true</property>
+ <!-- Must match the value of "useRegionBasedMarshalling" -->
+ <property name="inactiveOnStartup">true</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="evictionConfig">
+ <bean class="org.jboss.cache.config.EvictionConfig">
+ <property name="wakeupInterval">5000</property>
+ <!-- Overall default -->
+ <property name="defaultEvictionRegionConfig">
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.LRUAlgorithmConfig">
+ <!-- Evict LRU node once we have more than this number of nodes -->
+ <property name="maxNodes">10000</property>
+ <!-- And, evict any node that hasn't been accessed in this many seconds -->
+ <property name="timeToLiveSeconds">1000</property>
+ <!-- Don't evict a node that's been accessed within this many seconds.
+ Set this to a value greater than your max expected transaction length. -->
+ <property name="minTimeToLiveSeconds">120</property>
+ </bean>
+ </property>
+ </bean>
+ </property>
+ <property name="evictionRegionConfigs">
+ <list>
+ <!-- Don't ever evict modification timestamps -->
+ <bean class="org.jboss.cache.config.EvictionRegionConfig">
+ <property name="regionName">/TS</property>
+ <property name="evictionAlgorithmConfig">
+ <bean class="org.jboss.cache.eviction.NullEvictionAlgorithmConfig"/>
+ </property>
+ </bean>
+ </list>
+ </property>
+ </bean>
+ </property>
+ </bean>
+ </value>
+ </entry>
+
+ <!-- RiftSaw ODE cache-->
+ <entry><key>riftsaw-cache</key>
+ <value>
+
+ <bean name="RiftSawCache" class="org.jboss.cache.config.Configuration">
+
+ <!-- Provides batching functionality for caches that don't want to interact with regular JTA Transactions -->
+ <property name="transactionManagerLookupClass">org.jboss.cache.transaction.BatchModeTransactionManagerLookup</property>
+
+ <property name="clusterName">${jboss.partition.name:DefaultPartition}-RiftsawCache</property>
+ <property name="multiplexerStack">${jboss.default.jgroups.stack:udp}</property>
+ <property name="fetchInMemoryState">true</property>
+
+ <property name="nodeLockingScheme">PESSIMISTIC</property>
+ <property name="isolationLevel">REPEATABLE_READ</property>
+ <property name="useLockStriping">false</property>
+ <property name="cacheModeString">REPL_SYNC</property>
+
+ <property name="syncReplTimeout">17500</property>
+ <property name="lockAcquisitionTimeout">15000</property>
+ <property name="stateRetrievalTimeout">60000</property>
+
+ <property name="useRegionBasedMarshalling">false</property>
+ <property name="inactiveOnStartup">false</property>
+
+ <!-- Disable asynchronous RPC marshalling/sending -->
+ <property name="serializationExecutorPoolSize">0</property>
+ <!-- We have no asynchronous notification listeners -->
+ <property name="listenerAsyncPoolSize">0</property>
+
+ <property name="exposeManagementStatistics">true</property>
+ </bean>
+ </value>
+ </entry>
+
+ </map>
+ </property>
+ </bean>
+
+</deployment>
\ No newline at end of file
Modified: trunk/runtime/engine/src/main/java/org/apache/ode/store/RiftSawProcessStore.java
===================================================================
--- trunk/runtime/engine/src/main/java/org/apache/ode/store/RiftSawProcessStore.java 2010-11-05 04:12:41 UTC (rev 1082)
+++ trunk/runtime/engine/src/main/java/org/apache/ode/store/RiftSawProcessStore.java 2010-11-05 08:14:46 UTC (rev 1083)
@@ -28,6 +28,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.ode.bpel.compiler.api.CompilationException;
+import org.apache.ode.bpel.iapi.CacheProvider;
import org.apache.ode.bpel.iapi.ContextException;
import org.apache.ode.bpel.iapi.EndpointReferenceContext;
import org.apache.ode.bpel.iapi.ProcessState;
@@ -44,8 +45,9 @@
private static final Log __log = LogFactory.getLog(RiftSawProcessStore.class);
private DeployScheduler m_deployScheduler=new DeployScheduler();
- public RiftSawProcessStore(EndpointReferenceContext eprContext, TransactionManager txm, ConfStoreDAOConnectionFactory cf) {
- super(eprContext, txm, cf);
+ public RiftSawProcessStore(EndpointReferenceContext eprContext, TransactionManager txm,
+ ConfStoreDAOConnectionFactory cf, CacheProvider cacheProvider) {
+ super(eprContext, txm, cf, cacheProvider);
}
public void loadAll() {
Modified: trunk/runtime/engine/src/main/java/org/jboss/soa/bpel/runtime/engine/ode/BPELEngineImpl.java
===================================================================
--- trunk/runtime/engine/src/main/java/org/jboss/soa/bpel/runtime/engine/ode/BPELEngineImpl.java 2010-11-05 04:12:41 UTC (rev 1082)
+++ trunk/runtime/engine/src/main/java/org/jboss/soa/bpel/runtime/engine/ode/BPELEngineImpl.java 2010-11-05 08:14:46 UTC (rev 1083)
@@ -31,6 +31,7 @@
import org.apache.ode.dao.bpel.BpelDAOConnectionFactory;
import org.apache.ode.dao.scheduler.SchedulerDAOConnectionFactory;
import org.apache.ode.dao.store.ConfStoreDAOConnectionFactory;
+import org.apache.ode.il.cache.CacheProviderFactory;
import org.apache.ode.il.config.OdeConfigProperties;
import org.apache.ode.il.dbutil.Database;
import org.apache.ode.scheduler.simple.SimpleScheduler;
@@ -74,6 +75,7 @@
protected Database _db;
protected ExecutorService _executorService;
protected CronScheduler _cronScheduler;
+ protected CacheProvider _cacheProvider;
/**
* The default constructor.
@@ -293,6 +295,7 @@
__log.debug("Starting DAO.");
initDAO();
EndpointReferenceContextImpl eprContext = new EndpointReferenceContextImpl(this);
+ initCacheProvider();
__log.debug("Initializing BPEL process store.");
initProcessStore(eprContext);
__log.debug("Initializing BPEL server.");
@@ -320,7 +323,17 @@
}
- public void close() throws Exception {
+ private void initCacheProvider() {
+ _cacheProvider = CacheProviderFactory.getCacheProvider(_odeConfig);
+ try {
+ _cacheProvider.start();
+ } catch (Exception e) {
+ __log.error("Error in starting cache provider");
+ throw new RuntimeException("Error in initCacheProvider.", e);
+ }
+ }
+
+public void close() throws Exception {
ClassLoader old = Thread.currentThread().getContextClassLoader();
Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
try {
@@ -333,6 +346,8 @@
} catch (Throwable ex) {
__log.debug("Error stopping services.", ex);
}
+
+ _cacheProvider.stop();
if( _cronScheduler != null ) {
try {
@@ -464,7 +479,7 @@
}
protected ProcessStoreImpl createProcessStore(EndpointReferenceContext eprContext, TransactionManager txm, ConfStoreDAOConnectionFactory cf) {
- return new RiftSawProcessStore(eprContext, txm, cf);
+ return new RiftSawProcessStore(eprContext, txm, cf, _cacheProvider);
}
protected Scheduler createScheduler() {
14 years, 11 months
riftsaw SVN: r1082 - in branches/ODE/RiftSaw-ODE-trunk: bpel-api/src/main/java/org/apache/ode/bpel/iapi and 7 other directories.
by riftsaw-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2010-11-05 00:12:41 -0400 (Fri, 05 Nov 2010)
New Revision: 1082
Added:
branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Cache.java
branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/CacheProvider.java
branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/
branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/CacheProviderFactory.java
branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/DefaultCacheProvider.java
branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/HashMapCache.java
Modified:
branches/ODE/RiftSaw-ODE-trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessState.java
branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java
branches/ODE/RiftSaw-ODE-trunk/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java
branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java
branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java
branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/test/java/org/apache/ode/store/ProcessStoreTest.java
branches/ODE/RiftSaw-ODE-trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java
Log:
* RIFTSAW-282, abstract a cache API that can be implemented by ConcurrentHashMap and JBoss Cache.
Modified: branches/ODE/RiftSaw-ODE-trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java 2010-11-04 04:28:29 UTC (rev 1081)
+++ branches/ODE/RiftSaw-ODE-trunk/axis2/src/main/java/org/apache/ode/axis2/ODEServer.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -63,6 +63,7 @@
import org.apache.ode.bpel.engine.cron.CronScheduler;
import org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule;
import org.apache.ode.bpel.iapi.BpelEventListener;
+import org.apache.ode.bpel.iapi.CacheProvider;
import org.apache.ode.bpel.iapi.EndpointReferenceContext;
import org.apache.ode.bpel.iapi.ProcessConf;
import org.apache.ode.bpel.iapi.ProcessStoreEvent;
@@ -75,6 +76,7 @@
import org.apache.ode.dao.bpel.BpelDAOConnectionFactory;
import org.apache.ode.dao.scheduler.SchedulerDAOConnectionFactory;
import org.apache.ode.dao.store.ConfStoreDAOConnectionFactory;
+import org.apache.ode.il.cache.CacheProviderFactory;
import org.apache.ode.il.dbutil.Database;
import org.apache.ode.scheduler.simple.SimpleScheduler;
import org.apache.ode.store.ProcessStoreImpl;
@@ -114,6 +116,8 @@
protected ConfStoreDAOConnectionFactory _storeDaoCF;
protected SchedulerDAOConnectionFactory _schedDaoCF;
+
+ protected CacheProvider _cacheProvider;
protected ExecutorService _executorService;
@@ -179,7 +183,8 @@
initDataSource();
__log.debug("Starting DAO.");
initDAO();
- EndpointReferenceContextImpl eprContext = new EndpointReferenceContextImpl(this);
+ EndpointReferenceContextImpl eprContext = new EndpointReferenceContextImpl(this);
+ initCacheProvider();
__log.debug("Initializing BPEL process store.");
initProcessStore(eprContext);
__log.debug("Initializing BPEL server.");
@@ -228,7 +233,17 @@
__log.info(__msgs.msgOdeStarted());
}
- @SuppressWarnings("unchecked")
+ private void initCacheProvider() {
+ _cacheProvider = CacheProviderFactory.getCacheProvider(_odeConfig);
+ try {
+ _cacheProvider.start();
+ } catch (Exception e) {
+ __log.error("Error in starting cache provider");
+ throw new RuntimeException("Error in initCacheProvider.", e);
+ }
+ }
+
+ @SuppressWarnings("unchecked")
private DeploymentPoller getDeploymentPollerExt() {
DeploymentPoller poller = null;
@@ -297,6 +312,14 @@
} catch (Throwable t) {
__log.debug("Error stopping poller.", t);
}
+
+ if (_cacheProvider != null) {
+ try {
+ _cacheProvider.stop();
+ } catch(Exception e) {
+ __log.debug("Error stopping cache provider.", e);
+ }
+ }
if (_bpelServer != null)
try {
@@ -463,7 +486,7 @@
}
protected ProcessStoreImpl createProcessStore(EndpointReferenceContext eprContext, DataSource ds) {
- return new ProcessStoreImpl(eprContext,_txMgr,_storeDaoCF);
+ return new ProcessStoreImpl(eprContext,_txMgr,_storeDaoCF, _cacheProvider);
}
protected Scheduler createScheduler() {
Added: branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Cache.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Cache.java (rev 0)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/Cache.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -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 org.apache.ode.bpel.iapi;
+
+import java.util.Collection;
+import java.util.Set;
+
+/**
+ * This is the cache API that ODE will use for the consistency.
+ *
+ * @author jeffyu
+ *
+ */
+public interface Cache<K, V> {
+
+ public V put(K key, V value);
+
+ public V get(K key);
+
+ public V remove(K key);
+
+ public boolean containsKey(K key);
+
+ public Set<K> keySet();
+
+ public Collection<V> values();
+
+}
Added: branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/CacheProvider.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/CacheProvider.java (rev 0)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/CacheProvider.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -0,0 +1,34 @@
+/*
+ * 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 org.apache.ode.bpel.iapi;
+
+/**
+ *
+ * @author jeffyu
+ *
+ */
+public interface CacheProvider{
+
+ public void start() throws Exception;
+
+ public <K, V> Cache<K, V> createCache();
+
+ public void stop() throws Exception;
+
+}
Modified: branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessState.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessState.java 2010-11-04 04:28:29 UTC (rev 1081)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-api/src/main/java/org/apache/ode/bpel/iapi/ProcessState.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -18,11 +18,13 @@
*/
package org.apache.ode.bpel.iapi;
+import java.io.Serializable;
+
/**
* The user-selectable states of a process in the configuration store.
* @author mszefler
*/
-public enum ProcessState {
+public enum ProcessState implements Serializable{
/** Process can create new instances and execute old instances. */
ACTIVE,
Added: branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/CacheProviderFactory.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/CacheProviderFactory.java (rev 0)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/CacheProviderFactory.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -0,0 +1,50 @@
+/*
+ * 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 org.apache.ode.il.cache;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.ode.bpel.iapi.CacheProvider;
+import org.apache.ode.il.config.OdeConfigProperties;
+
+/**
+ * This is Cache Provider Factory, users should add following lines into ode configuration files. see {@CacheProvider}
+ *
+ * cache.provider = org.apache.ode.bpel.engine.DefaultCacheProvider (updating this value by using your own CacheProvider)
+ *
+ * @author jeffyu
+ *
+ */
+public class CacheProviderFactory {
+
+ private static final Log __log = LogFactory.getLog(CacheProviderFactory.class);
+
+ public static CacheProvider getCacheProvider(OdeConfigProperties props) {
+ Class<?> clz;
+ CacheProvider cp = null;
+ try {
+ clz = Thread.currentThread().getContextClassLoader().loadClass(props.getCacheProvider());
+ cp = (CacheProvider)clz.newInstance();
+ } catch (Exception e) {
+ __log.error("Error in creating cache provider by using " + props.getCacheProvider());
+ throw new RuntimeException("Error in creating cache provider.", e);
+ }
+ return cp;
+ }
+}
Added: branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/DefaultCacheProvider.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/DefaultCacheProvider.java (rev 0)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/DefaultCacheProvider.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -0,0 +1,43 @@
+/*
+ * 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 org.apache.ode.il.cache;
+
+import org.apache.ode.bpel.iapi.Cache;
+import org.apache.ode.bpel.iapi.CacheProvider;
+
+/**
+ *
+ * @author jeffyu
+ *
+ */
+public class DefaultCacheProvider implements CacheProvider{
+
+ public void start() throws Exception {
+
+ }
+
+ public <K, V> Cache<K, V> createCache() {
+ return new HashMapCache<K, V>();
+ }
+
+ public void stop() throws Exception {
+
+ }
+
+}
Added: branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/HashMapCache.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/HashMapCache.java (rev 0)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/cache/HashMapCache.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -0,0 +1,61 @@
+/*
+ * 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 org.apache.ode.il.cache;
+
+import java.util.Collection;
+import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
+
+import org.apache.ode.bpel.iapi.Cache;
+
+/**
+ * Cache implemented by using ConcurrentHashMap.
+ *
+ * @author jeffyu
+ *
+ */
+public class HashMapCache<K, V> implements Cache<K, V> {
+
+ private ConcurrentHashMap<K, V> map = new ConcurrentHashMap<K, V>();
+
+ public V put(K key, V value) {
+ return map.put(key, value);
+ }
+
+ public V get(K key) {
+ return map.get(key);
+ }
+
+ public V remove(K key) {
+ return map.remove(key);
+ }
+
+ public boolean containsKey(K key) {
+ return map.containsKey(key);
+ }
+
+ public Set<K> keySet() {
+ return map.keySet();
+ }
+
+ public Collection<V> values() {
+ return map.values();
+ }
+
+}
Modified: branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java 2010-11-04 04:28:29 UTC (rev 1081)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-epr/src/main/java/org/apache/ode/il/config/OdeConfigProperties.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -106,10 +106,14 @@
public static final String PROP_DAOCF_SCHEDULER = "dao.factory.scheduler";
+ public static final String PROP_CACHE_PROVIDER = "cache.provider";
+
public static final String PROP_MIGRATION_TRANSACTION_TIMEOUT = "migration.transaction.timeout";
public static final String DEFAULT_TX_FACTORY_CLASS_NAME = "org.apache.ode.il.EmbeddedGeronimoFactory";
+ public static final String DEFAULT_CACHE_PROVIDER = "org.apache.ode.il.cache.DefaultCacheProvider";
+
private File _cfgFile;
private String _prefix;
@@ -239,6 +243,10 @@
public String getDAOConfScheduleConnectionFactory() {
return getProperty(PROP_DAOCF_SCHEDULER, DEFAULT_DAOCF_SCHEDULER_CLASS);
}
+
+ public String getCacheProvider() {
+ return getProperty(PROP_CACHE_PROVIDER, DEFAULT_CACHE_PROVIDER);
+ }
public String getDbDataSource() {
return getProperty(OdeConfigProperties.PROP_DB_EXTERNAL_DS, "java:comp/env/jdbc/ode-ds");
Modified: branches/ODE/RiftSaw-ODE-trunk/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java 2010-11-04 04:28:29 UTC (rev 1081)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-runtime/src/test/java/org/apache/ode/bpel/runtime/MockBpelServer.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -37,6 +37,7 @@
import org.apache.ode.bpel.engine.BpelServerImpl;
import org.apache.ode.bpel.iapi.BindingContext;
+import org.apache.ode.bpel.iapi.CacheProvider;
import org.apache.ode.bpel.iapi.ContextException;
import org.apache.ode.bpel.iapi.Endpoint;
import org.apache.ode.bpel.iapi.EndpointReference;
@@ -52,6 +53,7 @@
import org.apache.ode.dao.store.ConfStoreDAOConnectionFactory;
import org.apache.ode.il.EmbeddedGeronimoFactory;
import org.apache.ode.il.MockScheduler;
+import org.apache.ode.il.cache.CacheProviderFactory;
import org.apache.ode.il.config.OdeConfigProperties;
import org.apache.ode.il.dbutil.Database;
import org.apache.ode.store.ProcessStoreImpl;
@@ -71,6 +73,7 @@
SchedulerWrapper _scheduler;
BpelDAOConnectionFactory _bpelDaoCF;
ConfStoreDAOConnectionFactory _confDaoCF;
+ CacheProvider _cacheProvider;
EndpointReferenceContext _eprContext;
MessageExchangeContext _mexContext;
BindingContext _bindContext;
@@ -92,9 +95,10 @@
if (_scheduler == null)
throw new RuntimeException("No scheduler");
createEndpointReferenceContext();
+ createCacheProvider();
Properties storeProps = new Properties();
storeProps.setProperty("hibernate.hbm2ddl.auto", "update");
- _store = new ProcessStoreImpl(_eprContext,_txManager,_confDaoCF);
+ _store = new ProcessStoreImpl(_eprContext,_txManager,_confDaoCF, _cacheProvider);
_server.setScheduler(_scheduler);
_server.setEndpointReferenceContext(_eprContext);
_server.setMessageExchangeContext(createMessageExchangeContext());
@@ -108,7 +112,16 @@
}
}
- public Collection<QName> deploy(File deploymentUnitDirectory) {
+ private void createCacheProvider() throws Exception{
+ Properties props = new Properties();
+ props.setProperty(OdeConfigProperties.PROP_CACHE_PROVIDER, System.getProperty(OdeConfigProperties.PROP_CACHE_PROVIDER, OdeConfigProperties.DEFAULT_CACHE_PROVIDER));
+ OdeConfigProperties odeProps = new OdeConfigProperties(props,"");
+
+ _cacheProvider = CacheProviderFactory.getCacheProvider(odeProps);
+ _cacheProvider.start();
+ }
+
+ public Collection<QName> deploy(File deploymentUnitDirectory) {
Collection<QName> pids = _store.deploy(deploymentUnitDirectory);
for (QName pid: pids)
_server.register(_store.getProcessConfiguration(pid));
@@ -157,6 +170,7 @@
}
public void shutdown() throws Exception {
+ _cacheProvider.stop();
_server.stop();
_scheduler.stop();
_scheduler.shutdown();
Modified: branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java 2010-11-04 04:28:29 UTC (rev 1081)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessConfImpl.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -24,6 +24,7 @@
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
+import java.io.Serializable;
import java.net.URI;
import java.text.ParseException;
import java.util.ArrayList;
@@ -53,6 +54,7 @@
import org.apache.ode.bpel.dd.TScopeEvents;
import org.apache.ode.bpel.dd.TService;
import org.apache.ode.bpel.evt.BpelEvent;
+import org.apache.ode.bpel.iapi.Cache;
import org.apache.ode.bpel.iapi.ContextException;
import org.apache.ode.bpel.iapi.Endpoint;
import org.apache.ode.bpel.iapi.EndpointReference;
@@ -78,7 +80,7 @@
* @author mriou <mriou at apache dot org>
*/
public class ProcessConfImpl implements ProcessConf {
- private static final Log __log = LogFactory.getLog(ProcessConfImpl.class);
+ private static final Log __log = LogFactory.getLog(ProcessConfImpl.class);
private final Date _deployDate;
private File _configDir;
@@ -90,9 +92,8 @@
private final ArrayList<QName> _sharedServices = new ArrayList<QName>();
private final Map<String, Set<BpelEvent.TYPE>> _events = new HashMap<String, Set<BpelEvent.TYPE>>();
private final ArrayList<String> _mexi = new ArrayList<String>();
- ProcessState _state;
- final TDeployment.Process _pinfo;
- final DeploymentUnitDir _du;
+ private final TDeployment.Process _pinfo;
+ private final DeploymentUnitDir _du;
private long _version = 0;
private QName _pid;
private QName _type;
@@ -101,16 +102,18 @@
private volatile boolean _inMemory = false;
// monitor the IL property file and reload it if necessary
- private WatchDog<Map<File, Long>, PropertiesObserver> propertiesWatchDog;
+ private WatchDog<Map<File, Long>, PropertiesObserver> propertiesWatchDog;
private EndpointReferenceContext eprContext;
private final ProcessCleanupConfImpl processCleanupConfImpl;
private final boolean generateProcessEventsAll;
+
+ private Cache<QName, ProcessState> _statesCache;
ProcessConfImpl(QName pid, QName type, long version, DeploymentUnitDir du, TDeployment.Process pinfo, Date deployDate,
- Map<QName, Node> props, ProcessState pstate, EndpointReferenceContext eprContext, File configDir, boolean generateProcessEventsAll) {
+ Map<QName, Node> props, Cache<QName, ProcessState> states, EndpointReferenceContext eprContext, File configDir, boolean generateProcessEventsAll) {
_pid = pid;
_version = version;
_du = du;
@@ -118,7 +121,7 @@
_deployDate = deployDate;
_configDir = configDir;
_props = Collections.unmodifiableMap(props);
- _state = pstate;
+ _statesCache = states;
_type = type;
_inMemory = _pinfo.isSetInMemory() && _pinfo.getInMemory();
this.generateProcessEventsAll = generateProcessEventsAll;
@@ -292,11 +295,11 @@
}
public ProcessState getState() {
- return _state;
+ return _statesCache.get(_pid);
}
void setState(ProcessState state) {
- _state = state;
+ _statesCache.put(_pid, state);
}
public List<String> getMexInterceptors(QName processId) {
Modified: branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java 2010-11-04 04:28:29 UTC (rev 1081)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/main/java/org/apache/ode/store/ProcessStoreImpl.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -31,6 +31,7 @@
import java.util.List;
import java.util.Map;
import java.util.Properties;
+import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
@@ -50,6 +51,8 @@
import org.apache.ode.bpel.compiler.api.CompilationException;
import org.apache.ode.bpel.dd.DeployDocument;
import org.apache.ode.bpel.dd.TDeployment;
+import org.apache.ode.bpel.iapi.Cache;
+import org.apache.ode.bpel.iapi.CacheProvider;
import org.apache.ode.bpel.iapi.ContextException;
import org.apache.ode.bpel.iapi.EndpointReferenceContext;
import org.apache.ode.bpel.iapi.ProcessConf;
@@ -93,9 +96,11 @@
private final CopyOnWriteArrayList<ProcessStoreListener> _listeners = new CopyOnWriteArrayList<ProcessStoreListener>();
- private Map<QName, ProcessConfImpl> _processes = new HashMap<QName, ProcessConfImpl>();
+ private Map<QName, ProcessConfImpl> _processes = new ConcurrentHashMap<QName, ProcessConfImpl>();
+
+ private Cache<QName, ProcessState> _processStates;
- protected Map<String, DeploymentUnitDir> _deploymentUnits = new HashMap<String, DeploymentUnitDir>();
+ protected Map<String, DeploymentUnitDir> _deploymentUnits = new ConcurrentHashMap<String, DeploymentUnitDir>();
/** Guards access to the _processes and _deploymentUnits */
private final ReadWriteLock _rw = new ReentrantReadWriteLock();
@@ -111,6 +116,8 @@
protected File _deployDir;
protected File _configDir;
+
+ private CacheProvider _cacheProvider;
/**
* Executor used to process DB transactions. Allows us to isolate the TX context, and to ensure that only one TX gets executed a
@@ -128,10 +135,13 @@
/**
* Constructor that hardwires OpenJPA on a new in-memory database. Suitable for tests.
*/
- public <E> ProcessStoreImpl(EndpointReferenceContext eprContext, TransactionManager mgr, ConfStoreDAOConnectionFactory cf) {
+ public <E> ProcessStoreImpl(EndpointReferenceContext eprContext, TransactionManager mgr,
+ ConfStoreDAOConnectionFactory cf, CacheProvider cacheProvider) {
_eprContext = eprContext;
_txm = mgr;
_cf=cf;
+ _cacheProvider = cacheProvider;
+ _processStates = _cacheProvider.createCache();
}
public void shutdown() {
@@ -201,7 +211,7 @@
du.scan();
final DeployDocument dd = du.getDeploymentDescriptor();
- final ArrayList<ProcessConfImpl> processes = new ArrayList<ProcessConfImpl>();
+ final ArrayList<ProcessConfImpl> processes = new ArrayList<ProcessConfImpl>();
Collection<QName> deployed;
_rw.writeLock().lock();
@@ -232,9 +242,11 @@
__log.error(errmsg);
throw new ContextException(errmsg);
}
-
+
+ ProcessState state = calcInitialState(processDD);
+ _processStates.put(pid, state);
ProcessConfImpl pconf = new ProcessConfImpl(pid, processDD.getName(), version, du, processDD, deployDate,
- calcInitialProperties(du.getProperties(), processDD), calcInitialState(processDD), _eprContext, _configDir, generateProcessEventsAll);
+ calcInitialProperties(du.getProperties(), processDD), _processStates, _eprContext, _configDir, generateProcessEventsAll);
processes.add(pconf);
}
@@ -481,6 +493,7 @@
});
pconf.setState(state);
+
if (old != null && old != state)
fireStateChange(pid, state, pconf.getDeploymentUnit().getName());
}
@@ -765,9 +778,11 @@
Map<QName, Node> props = calcInitialProperties(dud.getProperties(), pinfo);
// TODO: update the props based on the values in the DB.
-
+
+ _processStates.put(p.getPID(), p.getState());
+
ProcessConfImpl pconf = new ProcessConfImpl(p.getPID(), p.getType(), p.getVersion(), dud, pinfo, dudao
- .getDeployDate(), props, p.getState(), _eprContext, _configDir, generateProcessEventsAll);
+ .getDeployDate(), props, _processStates, _eprContext, _configDir, generateProcessEventsAll);
version = p.getVersion();
_processes.put(pconf.getProcessId(), pconf);
Modified: branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/test/java/org/apache/ode/store/ProcessStoreTest.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/test/java/org/apache/ode/store/ProcessStoreTest.java 2010-11-04 04:28:29 UTC (rev 1081)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-store/src/test/java/org/apache/ode/store/ProcessStoreTest.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -30,9 +30,11 @@
import junit.framework.TestCase;
+import org.apache.ode.bpel.iapi.CacheProvider;
import org.apache.ode.bpel.iapi.ProcessConf;
import org.apache.ode.bpel.iapi.ProcessConf.CLEANUP_CATEGORY;
import org.apache.ode.dao.store.ConfStoreDAOConnectionFactory;
+import org.apache.ode.il.cache.CacheProviderFactory;
import org.apache.ode.il.config.OdeConfigProperties;
import org.apache.ode.il.dbutil.Database;
import org.apache.ode.il.txutil.TxManager;
@@ -43,10 +45,12 @@
Database _db;
ConfStoreDAOConnectionFactory _cf;
private File _testdd;
+ private CacheProvider _cp;
public void setUp() throws Exception {
Properties props = new Properties();
props.setProperty(OdeConfigProperties.PROP_DAOCF_STORE,System.getProperty(OdeConfigProperties.PROP_DAOCF_STORE,OdeConfigProperties.DEFAULT_DAOCF_STORE_CLASS));
+ props.setProperty(OdeConfigProperties.PROP_CACHE_PROVIDER, OdeConfigProperties.DEFAULT_CACHE_PROVIDER);
OdeConfigProperties odeProps = new OdeConfigProperties(props, "");
_db = new Database(odeProps);
TxManager tx = new TxManager(odeProps);
@@ -54,7 +58,9 @@
_db.setTransactionManager(txm);
_db.start();
_cf = _db.createDaoStoreCF();
- _ps = new ProcessStoreImpl(null,txm, _cf);
+ _cp = CacheProviderFactory.getCacheProvider(odeProps) ;
+ _cp.start();
+ _ps = new ProcessStoreImpl(null,txm, _cf, _cp);
_ps.loadAll();
URI tdd = getClass().getResource("/testdd/deploy.xml").toURI();
_testdd = new File(tdd.getPath()).getParentFile();
@@ -62,6 +68,7 @@
}
public void tearDown() throws Exception {
+ _cp.stop();
_ps.shutdown();
_cf.shutdown();
_db.shutdown();
Modified: branches/ODE/RiftSaw-ODE-trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java
===================================================================
--- branches/ODE/RiftSaw-ODE-trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java 2010-11-04 04:28:29 UTC (rev 1081)
+++ branches/ODE/RiftSaw-ODE-trunk/bpel-test/src/main/java/org/apache/ode/test/BPELTestAbstract.java 2010-11-05 04:12:41 UTC (rev 1082)
@@ -41,6 +41,7 @@
import org.apache.ode.bpel.common.evt.DebugBpelEventListener;
import org.apache.ode.bpel.engine.BpelServerImpl;
+import org.apache.ode.bpel.iapi.CacheProvider;
import org.apache.ode.bpel.iapi.EndpointReference;
import org.apache.ode.bpel.iapi.EndpointReferenceContext;
import org.apache.ode.bpel.iapi.Message;
@@ -55,6 +56,7 @@
import org.apache.ode.dao.bpel.BpelDAOConnectionFactory;
import org.apache.ode.dao.store.ConfStoreDAOConnectionFactory;
import org.apache.ode.il.MockScheduler;
+import org.apache.ode.il.cache.CacheProviderFactory;
import org.apache.ode.il.config.OdeConfigProperties;
import org.apache.ode.il.dbutil.Database;
import org.apache.ode.store.ProcessConfImpl;
@@ -102,6 +104,8 @@
private MockTransactionManager _txm;
private Database _db;
+
+ private CacheProvider _cp;
@Before
public void setUp() throws Exception {
@@ -115,6 +119,7 @@
_txm = new MockTransactionManager();
Properties props = new Properties();
props.setProperty(OdeConfigProperties.PROP_DAOCF_STORE, System.getProperty(OdeConfigProperties.PROP_DAOCF_STORE,OdeConfigProperties.DEFAULT_DAOCF_STORE_CLASS));
+ props.setProperty(OdeConfigProperties.PROP_CACHE_PROVIDER, System.getProperty(OdeConfigProperties.PROP_CACHE_PROVIDER, OdeConfigProperties.DEFAULT_CACHE_PROVIDER));
OdeConfigProperties odeProps = new OdeConfigProperties(props,"");
_db = new Database(odeProps);
_db.setTransactionManager(_txm);
@@ -168,7 +173,11 @@
};
_scf = _db.createDaoStoreCF();
- store = new ProcessStoreImpl(eprContext, _txm, _scf);
+
+ _cp = CacheProviderFactory.getCacheProvider(odeProps);
+ _cp.start();
+
+ store = new ProcessStoreImpl(eprContext, _txm, _scf, _cp);
store.registerListener(new ProcessStoreListener() {
public void onProcessStoreEvent(ProcessStoreEvent event) {
// bounce the process
@@ -200,7 +209,8 @@
if (em != null) em.close();
if (emf != null) emf.close();
-
+
+ _cp.stop();
_server.stop();
_failures = null;
_deployed = null;
14 years, 11 months
riftsaw SVN: r1081 - in branches/RiftSaw-ODE-2.1.x: agents and 33 other directories.
by riftsaw-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2010-11-04 00:28:29 -0400 (Thu, 04 Nov 2010)
New Revision: 1081
Modified:
branches/RiftSaw-ODE-2.1.x/agents/pom.xml
branches/RiftSaw-ODE-2.1.x/axis2-war/pom.xml
branches/RiftSaw-ODE-2.1.x/axis2/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-api-jca/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-api/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-compiler/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-connector/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-dao/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-epr/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-obj/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-ql/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-runtime/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-schemas/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-scripts/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-store/pom.xml
branches/RiftSaw-ODE-2.1.x/bpel-test/pom.xml
branches/RiftSaw-ODE-2.1.x/dao-hibernate-db/pom.xml
branches/RiftSaw-ODE-2.1.x/dao-hibernate/pom.xml
branches/RiftSaw-ODE-2.1.x/dao-jpa-db/pom.xml
branches/RiftSaw-ODE-2.1.x/dao-jpa-hibernate/pom.xml
branches/RiftSaw-ODE-2.1.x/dao-jpa-ojpa-derby/pom.xml
branches/RiftSaw-ODE-2.1.x/dao-jpa-ojpa/pom.xml
branches/RiftSaw-ODE-2.1.x/dao-jpa/pom.xml
branches/RiftSaw-ODE-2.1.x/distro/pom.xml
branches/RiftSaw-ODE-2.1.x/distro/src/examples-jbi/maven2/ping-pong-osgi/pom.xml
branches/RiftSaw-ODE-2.1.x/jacob/pom.xml
branches/RiftSaw-ODE-2.1.x/jbi-bundle/pom.xml
branches/RiftSaw-ODE-2.1.x/jbi-karaf/pom.xml
branches/RiftSaw-ODE-2.1.x/jbi/pom.xml
branches/RiftSaw-ODE-2.1.x/jca-ra/pom.xml
branches/RiftSaw-ODE-2.1.x/jca-server/pom.xml
branches/RiftSaw-ODE-2.1.x/pom.xml
branches/RiftSaw-ODE-2.1.x/scheduler-simple/pom.xml
branches/RiftSaw-ODE-2.1.x/tools/pom.xml
branches/RiftSaw-ODE-2.1.x/utils/pom.xml
Log:
* update version to 2.1.5-SNAPSHOT.
Modified: branches/RiftSaw-ODE-2.1.x/agents/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/agents/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/agents/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,6 +28,6 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
</project>
Modified: branches/RiftSaw-ODE-2.1.x/axis2/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/axis2/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/axis2/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<properties>
Modified: branches/RiftSaw-ODE-2.1.x/axis2-war/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/axis2-war/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/axis2-war/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<properties>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-api/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-api/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-api/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-api-jca/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-api-jca/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-api-jca/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-compiler/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-compiler/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-compiler/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-connector/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-connector/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-connector/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-dao/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-dao/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-dao/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-epr/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-epr/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-epr/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-obj/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-obj/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-obj/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-ql/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-ql/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-ql/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-runtime/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-runtime/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-runtime/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-schemas/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-schemas/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-schemas/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -27,7 +27,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-scripts/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-scripts/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-scripts/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,6 +28,6 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
</project>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-store/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-store/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-store/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/bpel-test/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/bpel-test/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/bpel-test/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/dao-hibernate/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/dao-hibernate/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/dao-hibernate/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/dao-hibernate-db/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/dao-hibernate-db/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/dao-hibernate-db/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -27,7 +27,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/dao-jpa/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/dao-jpa/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/dao-jpa/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/dao-jpa-db/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/dao-jpa-db/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/dao-jpa-db/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/dao-jpa-hibernate/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/dao-jpa-hibernate/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/dao-jpa-hibernate/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/dao-jpa-ojpa/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/dao-jpa-ojpa/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/dao-jpa-ojpa/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/dao-jpa-ojpa-derby/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/dao-jpa-ojpa-derby/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/dao-jpa-ojpa-derby/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -25,7 +25,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/distro/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/distro/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/distro/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<properties>
Modified: branches/RiftSaw-ODE-2.1.x/distro/src/examples-jbi/maven2/ping-pong-osgi/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/distro/src/examples-jbi/maven2/ping-pong-osgi/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/distro/src/examples-jbi/maven2/ping-pong-osgi/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.soa.bpel.examples</groupId>
<artifactId>ping-pong-bundle</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
<name>ODE :: examples :: Ping Pong OSGi </name>
<packaging>bundle</packaging>
Modified: branches/RiftSaw-ODE-2.1.x/jacob/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/jacob/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/jacob/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -27,7 +27,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/jbi/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/jbi/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/jbi/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<properties>
Modified: branches/RiftSaw-ODE-2.1.x/jbi-bundle/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/jbi-bundle/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/jbi-bundle/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -33,7 +33,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<build>
Modified: branches/RiftSaw-ODE-2.1.x/jbi-karaf/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/jbi-karaf/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/jbi-karaf/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -22,7 +22,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<artifactId>riftsaw-jbi-karaf</artifactId>
Modified: branches/RiftSaw-ODE-2.1.x/jca-ra/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/jca-ra/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/jca-ra/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/jca-server/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/jca-server/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/jca-server/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -7,7 +7,7 @@
<packaging>pom</packaging>
<modelVersion>4.0.0</modelVersion>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
<url>http://ode.apache.org</url>
<issueManagement>
<system>jira</system>
@@ -82,7 +82,7 @@
</prerequisites>
-->
<properties>
- <ode.version>2.1.4.Final</ode.version>
+ <ode.version>2.1.5-SNAPSHOT</ode.version>
<activation.version>1.1</activation.version>
<annogen.version>0.1.0</annogen.version>
<antlr.version>2.7.7</antlr.version>
Modified: branches/RiftSaw-ODE-2.1.x/scheduler-simple/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/scheduler-simple/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/scheduler-simple/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -26,7 +26,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/tools/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/tools/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/tools/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -27,7 +27,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-ODE-2.1.x/utils/pom.xml
===================================================================
--- branches/RiftSaw-ODE-2.1.x/utils/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
+++ branches/RiftSaw-ODE-2.1.x/utils/pom.xml 2010-11-04 04:28:29 UTC (rev 1081)
@@ -28,7 +28,7 @@
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>ode</artifactId>
- <version>2.1.4.Final</version>
+ <version>2.1.5-SNAPSHOT</version>
</parent>
<dependencies>
14 years, 11 months
riftsaw SVN: r1080 - in branches/RiftSaw-2.1.x: console and 19 other directories.
by riftsaw-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2010-11-04 00:23:46 -0400 (Thu, 04 Nov 2010)
New Revision: 1080
Modified:
branches/RiftSaw-2.1.x/console/identity/pom.xml
branches/RiftSaw-2.1.x/console/integration/pom.xml
branches/RiftSaw-2.1.x/console/pom.xml
branches/RiftSaw-2.1.x/distribution/pom.xml
branches/RiftSaw-2.1.x/docs/docbook/gettingstartedguide/pom.xml
branches/RiftSaw-2.1.x/docs/docbook/gettingstartedguide/src/main/master.xml
branches/RiftSaw-2.1.x/docs/docbook/pom.xml
branches/RiftSaw-2.1.x/docs/docbook/userguide/pom.xml
branches/RiftSaw-2.1.x/docs/docbook/userguide/src/main/master.xml
branches/RiftSaw-2.1.x/docs/docbook/userguide/src/main/module/db.xml
branches/RiftSaw-2.1.x/integration-tests/pom.xml
branches/RiftSaw-2.1.x/pom.xml
branches/RiftSaw-2.1.x/qa/build.xml
branches/RiftSaw-2.1.x/qa/hudson-riftsaw-db.sh
branches/RiftSaw-2.1.x/qa/hudson-riftsaw-jboss.sh
branches/RiftSaw-2.1.x/qa/hudson-riftsaw-local.sh
branches/RiftSaw-2.1.x/qa/hudson-riftsaw-soa-p.sh
branches/RiftSaw-2.1.x/qa/hudson-riftsaw-ws.sh
branches/RiftSaw-2.1.x/runtime/deployer/pom.xml
branches/RiftSaw-2.1.x/runtime/engine-assembly/pom.xml
branches/RiftSaw-2.1.x/runtime/engine/pom.xml
branches/RiftSaw-2.1.x/runtime/jbossesb-bpel-assembly/pom.xml
branches/RiftSaw-2.1.x/runtime/jbossesb-bpel/pom.xml
branches/RiftSaw-2.1.x/runtime/pom.xml
branches/RiftSaw-2.1.x/runtime/uddi/pom.xml
branches/RiftSaw-2.1.x/stress-tests/pom.xml
Log:
* update trunk to 2.1.3-SNAPSHOT.
Modified: branches/RiftSaw-2.1.x/console/identity/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/console/identity/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/console/identity/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,13 +4,13 @@
<groupId>org.jboss.soa.bpel.console</groupId>
<artifactId>identity</artifactId>
<packaging>jar</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Console::Identity</name>
<parent>
<groupId>org.jboss.soa.bpel.console</groupId>
<artifactId>parent</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<build>
Modified: branches/RiftSaw-2.1.x/console/integration/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/console/integration/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/console/integration/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,13 +4,13 @@
<groupId>org.jboss.soa.bpel.console</groupId>
<artifactId>integration</artifactId>
<packaging>jar</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Console::Integration</name>
<parent>
<groupId>org.jboss.soa.bpel.console</groupId>
<artifactId>parent</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<!-- Properties -->
Modified: branches/RiftSaw-2.1.x/console/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/console/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/console/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -5,13 +5,13 @@
<groupId>org.jboss.soa.bpel.console</groupId>
<artifactId>parent</artifactId>
<packaging>pom</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Console</name>
<parent>
<groupId>org.jboss.soa</groupId>
<artifactId>bpel</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<modules>
Modified: branches/RiftSaw-2.1.x/distribution/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/distribution/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/distribution/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -23,12 +23,12 @@
<artifactId>distribution</artifactId>
<packaging>pom</packaging>
<name>RiftSaw::Distribution</name>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<parent>
<groupId>org.jboss.soa</groupId>
<artifactId>bpel</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>
Modified: branches/RiftSaw-2.1.x/docs/docbook/gettingstartedguide/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/docs/docbook/gettingstartedguide/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/docs/docbook/gettingstartedguide/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -6,14 +6,14 @@
<groupId>org.jboss.soa.bpel.docs</groupId>
<artifactId>gettingstartedguide</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<packaging>jdocbook</packaging>
<name>RiftSaw::Docs::gettingstartedguide</name>
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>docs</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
Modified: branches/RiftSaw-2.1.x/docs/docbook/gettingstartedguide/src/main/master.xml
===================================================================
--- branches/RiftSaw-2.1.x/docs/docbook/gettingstartedguide/src/main/master.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/docs/docbook/gettingstartedguide/src/main/master.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -5,7 +5,7 @@
<book lang="en">
<bookinfo>
- <title>RiftSaw 2.1.2.Final</title>
+ <title>RiftSaw 2.1.3-SNAPSHOT</title>
<subtitle>Getting Started Guide</subtitle>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="module/author_group.xml"/>
</bookinfo>
Modified: branches/RiftSaw-2.1.x/docs/docbook/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/docs/docbook/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/docs/docbook/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -6,14 +6,14 @@
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>docs</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<packaging>pom</packaging>
<name>RiftSaw::Docs</name>
<parent>
<groupId>org.jboss.soa</groupId>
<artifactId>bpel</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<relativePath>../../pom.xml</relativePath>
</parent>
Modified: branches/RiftSaw-2.1.x/docs/docbook/userguide/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/docs/docbook/userguide/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/docs/docbook/userguide/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -6,14 +6,14 @@
<groupId>org.jboss.soa.bpel.docs</groupId>
<artifactId>userguide</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<packaging>jdocbook</packaging>
<name>RiftSaw::Docs::userguide</name>
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>docs</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
Modified: branches/RiftSaw-2.1.x/docs/docbook/userguide/src/main/master.xml
===================================================================
--- branches/RiftSaw-2.1.x/docs/docbook/userguide/src/main/master.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/docs/docbook/userguide/src/main/master.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -5,7 +5,7 @@
<book lang="en">
<bookinfo>
- <title>RiftSaw 2.1.2.Final</title>
+ <title>RiftSaw 2.1.3-SNAPSHOT</title>
<subtitle>User Guide</subtitle>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="module/author_group.xml"/>
</bookinfo>
Modified: branches/RiftSaw-2.1.x/docs/docbook/userguide/src/main/module/db.xml
===================================================================
--- branches/RiftSaw-2.1.x/docs/docbook/userguide/src/main/module/db.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/docs/docbook/userguide/src/main/module/db.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -8,7 +8,7 @@
<title>Upgrade database schema</title>
<para>
- The RiftSaw database schema has been changed between 2.0.0.Final and 2.1.2.Final, please refer to
+ The RiftSaw database schema has been changed between 2.0.0.Final and 2.1.3-SNAPSHOT, please refer to
<ulink url="http://community.jboss.org/wiki/RiftSawDatabaseupgrade">this wiki page </ulink>for the upgrade detail information.
</para>
@@ -20,7 +20,7 @@
<para>
Below is the EER Diagram generated by Mysql Workbench tool.
<note>
- This diagram is from RiftSaw 2.1.2.Final database schemas.
+ This diagram is from RiftSaw 2.1.3-SNAPSHOT database schemas.
</note>
</para>
Modified: branches/RiftSaw-2.1.x/integration-tests/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/integration-tests/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/integration-tests/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,12 +4,12 @@
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>integration-tests</artifactId>
<packaging>pom</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Integration-Tests</name>
<parent>
<groupId>org.jboss.soa</groupId>
<artifactId>bpel</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<properties>
<jboss.jbosssx.version>2.0.2.SP3</jboss.jbosssx.version>
Modified: branches/RiftSaw-2.1.x/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.soa</groupId>
<artifactId>bpel</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<packaging>pom</packaging>
<name>RiftSaw</name>
<url>http://www.jboss.org/riftsaw</url>
@@ -83,7 +83,7 @@
<properties>
<riftsaw.ode.version>2.1.4.Final</riftsaw.ode.version>
- <riftsaw.engine.version>2.1.2.Final</riftsaw.engine.version>
+ <riftsaw.engine.version>2.1.3-SNAPSHOT</riftsaw.engine.version>
<bpel.console.version>2.1.2</bpel.console.version>
<commons.logging.version>1.1.1</commons.logging.version>
<junit.version>3.8.1</junit.version>
Modified: branches/RiftSaw-2.1.x/qa/build.xml
===================================================================
--- branches/RiftSaw-2.1.x/qa/build.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/qa/build.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -9,7 +9,7 @@
<!-- CONFIGURABLE PROPERTIES -->
<property name="database" value="hsqldb" />
- <property name="riftsaw.version" value="2.1.2.Final" />
+ <property name="riftsaw.version" value="2.1.3-SNAPSHOT" />
<property name="riftsaw.home" value="${riftsaw.parent.dir}/riftsaw-${riftsaw.version}" /> <!-- riftsaw.home should not be configured. change riftsaw.parent.dir instead -->
<property name="jboss.parent.dir" value="${riftsaw.home}" />
Modified: branches/RiftSaw-2.1.x/qa/hudson-riftsaw-db.sh
===================================================================
--- branches/RiftSaw-2.1.x/qa/hudson-riftsaw-db.sh 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/qa/hudson-riftsaw-db.sh 2010-11-04 04:23:46 UTC (rev 1080)
@@ -8,7 +8,7 @@
DOWNLOAD_DIR="$RIFTSAW_PARENT_DIR/downloads"
JBOSS_VERSION="5.1.0.GA"
-RIFTSAW_VERSION="2.1.2.Final"
+RIFTSAW_VERSION="2.1.3-SNAPSHOT"
AS_HOME="$RIFTSAW_PARENT_DIR/riftsaw-$RIFTSAW_VERSION/jboss-$JBOSS_VERSION"
AS_CONFIG="default"
REPLACE_QA_JDBC="true"
Modified: branches/RiftSaw-2.1.x/qa/hudson-riftsaw-jboss.sh
===================================================================
--- branches/RiftSaw-2.1.x/qa/hudson-riftsaw-jboss.sh 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/qa/hudson-riftsaw-jboss.sh 2010-11-04 04:23:46 UTC (rev 1080)
@@ -8,7 +8,7 @@
DOWNLOAD_DIR="$RIFTSAW_PARENT_DIR/downloads"
JBOSS_VERSION="5.1.0.GA"
-RIFTSAW_VERSION="2.1.2.Final"
+RIFTSAW_VERSION="2.1.3-SNAPSHOT"
AS_HOME="$RIFTSAW_PARENT_DIR/riftsaw-$RIFTSAW_VERSION/jboss-$JBOSS_VERSION"
AS_CONFIG="default"
REPLACE_QA_JDBC="true"
Modified: branches/RiftSaw-2.1.x/qa/hudson-riftsaw-local.sh
===================================================================
--- branches/RiftSaw-2.1.x/qa/hudson-riftsaw-local.sh 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/qa/hudson-riftsaw-local.sh 2010-11-04 04:23:46 UTC (rev 1080)
@@ -8,7 +8,7 @@
DOWNLOAD_DIR="$RIFTSAW_PARENT_DIR/downloads"
JBOSS_VERSION="5.1.0.GA"
-RIFTSAW_VERSION="2.1.2.Final"
+RIFTSAW_VERSION="2.1.3-SNAPSHOT"
AS_HOME="$RIFTSAW_PARENT_DIR/riftsaw-$RIFTSAW_VERSION/jboss-$JBOSS_VERSION"
AS_CONFIG="default"
REPLACE_QA_JDBC="true"
Modified: branches/RiftSaw-2.1.x/qa/hudson-riftsaw-soa-p.sh
===================================================================
--- branches/RiftSaw-2.1.x/qa/hudson-riftsaw-soa-p.sh 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/qa/hudson-riftsaw-soa-p.sh 2010-11-04 04:23:46 UTC (rev 1080)
@@ -9,7 +9,7 @@
DATABASE="hsql"
-RIFTSAW_VERSION="2.1.2.Final"
+RIFTSAW_VERSION="2.1.3-SNAPSHOT"
AS_HOME="$RIFTSAW_PARENT_DIR/riftsaw-$RIFTSAW_VERSION/jboss-soa-p.5.0.0/jboss-as"
AS_CONFIG="default"
REPLACE_QA_JDBC="true"
Modified: branches/RiftSaw-2.1.x/qa/hudson-riftsaw-ws.sh
===================================================================
--- branches/RiftSaw-2.1.x/qa/hudson-riftsaw-ws.sh 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/qa/hudson-riftsaw-ws.sh 2010-11-04 04:23:46 UTC (rev 1080)
@@ -8,7 +8,7 @@
JBOSS_VERSION="5.1.0.GA"
DATABASE="hsql"
-RIFTSAW_VERSION="2.1.2.Final"
+RIFTSAW_VERSION="2.1.3-SNAPSHOT"
AS_HOME="$RIFTSAW_PARENT_DIR/riftsaw-$RIFTSAW_VERSION/jboss-$JBOSS_VERSION"
AS_CONFIG="default"
WS_STACK_DIR="$RIFTSAW_PARENT_DIR/downloads"
Modified: branches/RiftSaw-2.1.x/runtime/deployer/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/runtime/deployer/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/runtime/deployer/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,13 +4,13 @@
<groupId>org.jboss.soa.bpel.runtime</groupId>
<artifactId>deployer</artifactId>
<packaging>jar</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Runtime::Deployer</name>
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>runtime</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-2.1.x/runtime/engine/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/runtime/engine/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/runtime/engine/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,13 +4,13 @@
<groupId>org.jboss.soa.bpel.runtime</groupId>
<artifactId>riftsaw-engine</artifactId>
<packaging>jar</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Runtime::Engine</name>
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>runtime</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-2.1.x/runtime/engine-assembly/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/runtime/engine-assembly/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/runtime/engine-assembly/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -3,14 +3,14 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.soa.bpel.runtime</groupId>
<artifactId>riftsaw</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<packaging>pom</packaging>
<name>RiftSaw::Runtime::Engine-Assembly</name>
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>runtime</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-2.1.x/runtime/jbossesb-bpel/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/runtime/jbossesb-bpel/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/runtime/jbossesb-bpel/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,13 +4,13 @@
<groupId>org.jboss.soa.bpel.runtime</groupId>
<artifactId>jbossesb-bpel</artifactId>
<packaging>jar</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Runtime::JBossESB-BPEL</name>
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>runtime</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-2.1.x/runtime/jbossesb-bpel-assembly/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/runtime/jbossesb-bpel-assembly/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/runtime/jbossesb-bpel-assembly/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -3,13 +3,13 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.soa.bpel.runtime</groupId>
<artifactId>bpel.esb</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<packaging>pom</packaging>
<name>RiftSaw::Runtime::JBossESB-BPEL-Assembly</name>
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>runtime</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-2.1.x/runtime/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/runtime/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/runtime/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -5,13 +5,13 @@
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>runtime</artifactId>
<packaging>pom</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Runtime</name>
<parent>
<groupId>org.jboss.soa</groupId>
<artifactId>bpel</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<modules>
Modified: branches/RiftSaw-2.1.x/runtime/uddi/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/runtime/uddi/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/runtime/uddi/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,13 +4,13 @@
<groupId>org.jboss.soa.bpel.runtime</groupId>
<artifactId>riftsaw-uddi</artifactId>
<packaging>jar</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Runtime::UDDI</name>
<parent>
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>runtime</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<dependencies>
Modified: branches/RiftSaw-2.1.x/stress-tests/pom.xml
===================================================================
--- branches/RiftSaw-2.1.x/stress-tests/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
+++ branches/RiftSaw-2.1.x/stress-tests/pom.xml 2010-11-04 04:23:46 UTC (rev 1080)
@@ -4,12 +4,12 @@
<groupId>org.jboss.soa.bpel</groupId>
<artifactId>stress-tests</artifactId>
<packaging>pom</packaging>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
<name>RiftSaw::Stress-Tests</name>
<parent>
<groupId>org.jboss.soa</groupId>
<artifactId>bpel</artifactId>
- <version>2.1.2.Final</version>
+ <version>2.1.3-SNAPSHOT</version>
</parent>
<profiles>
14 years, 11 months
riftsaw SVN: r1079 - in tags/RiftSaw-2.1.2.Final: distribution and 2 other directories.
by riftsaw-commits@lists.jboss.org
Author: jeff.yuchang
Date: 2010-11-04 00:09:23 -0400 (Thu, 04 Nov 2010)
New Revision: 1079
Modified:
tags/RiftSaw-2.1.2.Final/distribution/pom.xml
tags/RiftSaw-2.1.2.Final/pom.xml
tags/RiftSaw-2.1.2.Final/runtime/engine-assembly/src/main/resources/bpel-sql/sybase.sql
tags/RiftSaw-2.1.2.Final/runtime/uddi/pom.xml
Log:
* update juddi to 3.0.4 version by using staging repository atm.
will remove the staging repository once it has been put in central repo.
Modified: tags/RiftSaw-2.1.2.Final/distribution/pom.xml
===================================================================
--- tags/RiftSaw-2.1.2.Final/distribution/pom.xml 2010-11-02 20:34:21 UTC (rev 1078)
+++ tags/RiftSaw-2.1.2.Final/distribution/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
@@ -209,7 +209,7 @@
<dependency>
<groupId>org.apache.juddi</groupId>
<artifactId>juddi-client</artifactId>
- <version>3.0.4-SNAPSHOT</version>
+ <version>3.0.4</version>
</dependency>
</dependencies>
Modified: tags/RiftSaw-2.1.2.Final/pom.xml
===================================================================
--- tags/RiftSaw-2.1.2.Final/pom.xml 2010-11-02 20:34:21 UTC (rev 1078)
+++ tags/RiftSaw-2.1.2.Final/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
@@ -430,6 +430,13 @@
<updatePolicy>never</updatePolicy>
</snapshots>
</repository>
+
+ <!-- this need to be removed after juddi-3.0.4 released-->
+ <repository>
+ <id>juddi-3.0.4-staging-repo</id>
+ <name>Apache Juddi 3.0.4 staging repository</name>
+ <url>https://repository.apache.org/content/repositories/orgapachews-016/</url>
+ </repository>
</repositories>
Modified: tags/RiftSaw-2.1.2.Final/runtime/engine-assembly/src/main/resources/bpel-sql/sybase.sql
===================================================================
--- tags/RiftSaw-2.1.2.Final/runtime/engine-assembly/src/main/resources/bpel-sql/sybase.sql 2010-11-02 20:34:21 UTC (rev 1078)
+++ tags/RiftSaw-2.1.2.Final/runtime/engine-assembly/src/main/resources/bpel-sql/sybase.sql 2010-11-04 04:09:23 UTC (rev 1079)
@@ -4,19 +4,19 @@
CREATE TABLE ODE_JOB (
jobid CHAR(64) DEFAULT '' NOT NULL,
ts BIGINT DEFAULT 0 NOT NULL,
- nodeid char(64),
+ nodeid char(64) null,
scheduled int DEFAULT 0 NOT NULL,
transacted int DEFAULT 0 NOT NULL,
- instanceId BIGINT,
- mexId varchar(255),
- processId varchar(255),
- type varchar(255),
- channel varchar(255),
- correlatorId varchar(255),
- correlationKeySet varchar(255),
- retryCount int,
- inMem int,
+ instanceId BIGINT null,
+ mexId varchar(255) null,
+ processId varchar(255) null,
+ type varchar(255) null,
+ channel varchar(255) null,
+ correlatorId varchar(255) null,
+ correlationKeySet varchar(255) null,
+ retryCount int null,
+ inMem int null,
detailsExt IMAGE null,
PRIMARY KEY(jobid));
Modified: tags/RiftSaw-2.1.2.Final/runtime/uddi/pom.xml
===================================================================
--- tags/RiftSaw-2.1.2.Final/runtime/uddi/pom.xml 2010-11-02 20:34:21 UTC (rev 1078)
+++ tags/RiftSaw-2.1.2.Final/runtime/uddi/pom.xml 2010-11-04 04:09:23 UTC (rev 1079)
@@ -25,7 +25,7 @@
<dependency>
<artifactId>juddi-client</artifactId>
<groupId>org.apache.juddi</groupId>
- <version>3.0.4-SNAPSHOT</version>
+ <version>3.0.4</version>
<scope>provided</scope>
</dependency>
14 years, 11 months
Build failed in Hudson: RiftSaw #279
by jboss-qa-internal@redhat.com
See <http://hudson.qa.jboss.com/hudson/job/RiftSaw/279/changes>
Changes:
[heiko.braun(a)jboss.com] RIFTSAW-264, RIFTSAW-92
------------------------------------------
[...truncated 1284 lines...]
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345)
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
Caused by: java.net.ConnectException: Connection refused
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:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:22)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:128)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:595)
... 30 more
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.07 sec <<< FAILURE!
Running org.jboss.soa.bpel.tests.tutorials.BluePrint3.BluePrint3TestCase
java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
java.net.ConnectException: Connection refused
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:601)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:198)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:110)
at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)
at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:133)
at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:197)
at org.jboss.jmx.connector.invoker.client.InvokerAdaptorClientInterceptor.invoke(InvokerAdaptorClientInterceptor.java:66)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:68)
at org.jboss.proxy.ClientMethodInterceptor.invoke(ClientMethodInterceptor.java:74)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:101)
at $Proxy0.invoke(Unknown Source)
at org.jboss.soa.bpel.tests.TestDeployerJBoss.invokeMainDeployer(TestDeployerJBoss.java:65)
at org.jboss.soa.bpel.tests.TestDeployerJBoss.deploy(TestDeployerJBoss.java:55)
at org.jboss.soa.bpel.tests.RiftSawTestHelper.deploy(RiftSawTestHelper.java:48)
at org.jboss.soa.bpel.tests.RiftSawTestSetup.setUp(RiftSawTestSetup.java:104)
at junit.extensions.TestSetup$1.protect(TestSetup.java:22)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.extensions.TestSetup.run(TestSetup.java:27)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345)
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
Caused by: java.net.ConnectException: Connection refused
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:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:22)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:128)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:595)
... 30 more
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.068 sec <<< FAILURE!
Running org.jboss.soa.bpel.tests.samples.QuickstartBPELHelloWorldExtendedTimeoutTestCase
java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
java.net.ConnectException: Connection refused
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:601)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:198)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:110)
at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)
at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:133)
at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:197)
at org.jboss.jmx.connector.invoker.client.InvokerAdaptorClientInterceptor.invoke(InvokerAdaptorClientInterceptor.java:66)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:68)
at org.jboss.proxy.ClientMethodInterceptor.invoke(ClientMethodInterceptor.java:74)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:101)
at $Proxy0.invoke(Unknown Source)
at org.jboss.soa.bpel.tests.TestDeployerJBoss.invokeMainDeployer(TestDeployerJBoss.java:65)
at org.jboss.soa.bpel.tests.TestDeployerJBoss.deploy(TestDeployerJBoss.java:55)
at org.jboss.soa.bpel.tests.RiftSawTestHelper.deploy(RiftSawTestHelper.java:48)
at org.jboss.soa.bpel.tests.RiftSawTestSetup.setUp(RiftSawTestSetup.java:104)
at junit.extensions.TestSetup$1.protect(TestSetup.java:22)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.extensions.TestSetup.run(TestSetup.java:27)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345)
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
Caused by: java.net.ConnectException: Connection refused
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:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:22)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:128)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:595)
... 30 more
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.047 sec <<< FAILURE!
Running org.jboss.soa.bpel.tests.testcases.RiftSaw70TestCase
java.rmi.ConnectException: Connection refused to host: 127.0.0.1; nested exception is:
java.net.ConnectException: Connection refused
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:601)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:198)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:184)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:110)
at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)
at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:133)
at org.jboss.invocation.InvokerInterceptor.invokeInvoker(InvokerInterceptor.java:365)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:197)
at org.jboss.jmx.connector.invoker.client.InvokerAdaptorClientInterceptor.invoke(InvokerAdaptorClientInterceptor.java:66)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:68)
at org.jboss.proxy.ClientMethodInterceptor.invoke(ClientMethodInterceptor.java:74)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:101)
at $Proxy0.invoke(Unknown Source)
at org.jboss.soa.bpel.tests.TestDeployerJBoss.invokeMainDeployer(TestDeployerJBoss.java:65)
at org.jboss.soa.bpel.tests.TestDeployerJBoss.deploy(TestDeployerJBoss.java:55)
at org.jboss.soa.bpel.tests.RiftSawTestHelper.deploy(RiftSawTestHelper.java:48)
at org.jboss.soa.bpel.tests.RiftSawTestSetup.setUp(RiftSawTestSetup.java:104)
at junit.extensions.TestSetup$1.protect(TestSetup.java:22)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.extensions.TestSetup.run(TestSetup.java:27)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:62)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:140)
at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:127)
at org.apache.maven.surefire.Surefire.run(Surefire.java:177)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:345)
at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:1009)
Caused by: java.net.ConnectException: Connection refused
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:529)
at java.net.Socket.connect(Socket.java:478)
at java.net.Socket.<init>(Socket.java:375)
at java.net.Socket.<init>(Socket.java:189)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:22)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:128)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:595)
... 30 more
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.069 sec <<< FAILURE!
Running org.jboss.soa.bpel.tests.samples.QuickstartBPELSecureInvokeTestCase
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.011 sec
Results :
Failed tests:
testSendHello(org.jboss.soa.bpel.tests.testcases.RiftSaw299WSTestCase)
testSendHello(org.jboss.soa.bpel.tests.testcases.RiftSaw299PeerTestCase)
testSendHello(org.jboss.soa.bpel.tests.esb.QuickstartBPELInvokeESBEBWSTestCase)
Tests in error:
testSendHello(org.jboss.soa.bpel.tests.esb.QuickstartESBBPELLoanApprovalTestCase)
testSendHello(org.jboss.soa.bpel.tests.esb.QuickstartESBBPELHelloWorldTestCase)
testSendHello(org.jboss.soa.bpel.tests.esb.QuickstartESBBPELHelloWorldExtendedTimeoutTestCase)
testSendHello(org.jboss.soa.bpel.tests.esb.RiftSaw144TestCase)
testSendHello(org.jboss.soa.bpel.tests.testcases.RiftSaw296TestCase)
junit.framework.TestSuite(a)1e3a4822(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)455bfaf(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)72d8978c(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)69c5a33b(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)2e5facbd(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)b45c414(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)114c02d4(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)154db52b(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)20b124fa(org.jboss.soa.bpel.tests.RiftSawTestSetup)
junit.framework.TestSuite(a)4df2a9da(org.jboss.soa.bpel.tests.RiftSawTestSetup)
Tests run: 48, Failures: 3, Errors: 15, Skipped: 0
[ERROR] There are test failures.
Please refer to <http://hudson.qa.jboss.com/hudson/job/RiftSaw/ws/riftsaw/integration-test...> for the individual test results.
[INFO] [antrun:run {execution: undeploy-riftsaw}]
[INFO] Executing tasks
stop-server:
[echo] Stopping the server
[echo] Server is at <http://hudson.qa.jboss.com/hudson/job/RiftSaw/ws/riftsaw-2.2.0-SNAPSHOT/j...>
[java] Exception in thread "main" javax.naming.CommunicationException: Could not obtain connection to any of these urls: localhost:1099 [Root exception is javax.naming.CommunicationException: Failed to connect to server localhost/127.0.0.1:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server localhost/127.0.0.1:1099 [Root exception is java.net.ConnectException: Connection refused]]]
[java] at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1763)
[java] at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:693)
[java] at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:686)
[java] at javax.naming.InitialContext.lookup(InitialContext.java:392)
[java] at org.jboss.Shutdown.main(Shutdown.java:219)
[java] Caused by: javax.naming.CommunicationException: Failed to connect to server localhost/127.0.0.1:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server localhost/127.0.0.1:1099 [Root exception is java.net.ConnectException: Connection refused]]
[java] at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:335)
[java] at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1734)
[java] ... 4 more
[java] Caused by: javax.naming.ServiceUnavailableException: Failed to connect to server localhost/127.0.0.1:1099 [Root exception is java.net.ConnectException: Connection refused]
[java] at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:305)
[java] ... 5 more
[java] Caused by: java.net.ConnectException: Connection refused
[java] at java.net.PlainSocketImpl.socketConnect(Native Method)
[java] at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
[java] at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
[java] at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
[java] at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
[java] at java.net.Socket.connect(Socket.java:529)
[java] at org.jnp.interfaces.TimedSocketFactory.createSocket(TimedSocketFactory.java:97)
[java] at org.jnp.interfaces.TimedSocketFactory.createSocket(TimedSocketFactory.java:82)
[java] at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:301)
[java] ... 5 more
[java] Java Result: 1
[echo] Shutdown rc = 1
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] An Ant BuildException has occured: The following error occurred while executing this line:
<http://hudson.qa.jboss.com/hudson/job/RiftSaw/ws/riftsaw/integration-test...>:152: Unable to shut down JBoss (maybe it hasn't fully started yet?).
[INFO] ------------------------------------------------------------------------
[INFO] For more information, run Maven with the -e switch
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 32 minutes 5 seconds
[INFO] Finished at: Fri Oct 15 19:08:11 EDT 2010
[INFO] Final Memory: 114M/660M
[INFO] ------------------------------------------------------------------------
Recording test results
Archiving artifacts
14 years, 11 months