[jboss-svn-commits] JBL Code SVN: r31992 - in labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts: validation-xml-schema and 9 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Mar 8 08:04:42 EST 2010


Author: johan.kumps
Date: 2010-03-08 08:04:41 -0500 (Mon, 08 Mar 2010)
New Revision: 31992

Added:
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/build.xml
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/deployment.xml
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jbm-queue-service.xml
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jbmq-queue-service.xml
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jboss-esb.xml
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jndi.properties
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/lib/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/log4j.xml
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/readme.txt
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/samples/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/samples/quickstart/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/samples/quickstart/validation_xml_schema/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/samples/quickstart/validation_xml_schema/test/
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/samples/quickstart/validation_xml_schema/test/SendJMSMessage.java
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/test.xsd
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/test-invalid.xml
   labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/test.xml
Log:
Created quickstart for XSD validation feature

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/build.xml
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/build.xml	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/build.xml	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,28 @@
+<project name="validation-xml-schema-quickstart" default="deploy" basedir=".">
+	<description> 
+		${ant.project.name}
+		${line.separator}
+	</description>
+
+	<property name="additional.deploys" value="smooks-res.xml" />
+
+	<!-- Import the base Ant build script... -->
+	<import file="../conf/base-build.xml" />
+
+	<target name="runtest-valid" depends="compile" description="runs Test JMS Sender">
+		<echo>Runs Test JMS Sender</echo>
+		<java fork="yes" classname="org.jboss.soa.esb.samples.quickstart.validation_xml_schema.test.SendJMSMessage" failonerror="true">
+			<arg value="test.xml" />
+			<classpath refid="exec-classpath" />
+		</java>
+	</target>
+
+	<target name="runtest-invalid" depends="compile" description="runs Test JMS Sender">
+		<echo>Runs Test JMS Sender</echo>
+		<java fork="yes" classname="org.jboss.soa.esb.samples.quickstart.validation_xml_schema.test.SendJMSMessage" failonerror="true">
+			<arg value="test-invalid.xml" />
+			<classpath refid="exec-classpath" />
+		</java>
+	</target>
+
+</project>

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/deployment.xml
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/deployment.xml	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/deployment.xml	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,4 @@
+<jbossesb-deployment>
+  <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_validation-xml-schema_gw</depends>
+  <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_validation-xml-schema_esb</depends>
+</jbossesb-deployment>

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jbm-queue-service.xml
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jbm-queue-service.xml	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jbm-queue-service.xml	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_validation-xml-schema_gw"
+           xmbean-dd="xmdesc/Queue-xmbean.xml">
+        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+        <depends>jboss.messaging:service=PostOffice</depends>
+    </mbean>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_validation-xml-schema_esb"
+           xmbean-dd="xmdesc/Queue-xmbean.xml">
+        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+        <depends>jboss.messaging:service=PostOffice</depends>
+    </mbean>
+</server>

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jbmq-queue-service.xml
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jbmq-queue-service.xml	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jbmq-queue-service.xml	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server>
+  <mbean code="org.jboss.mq.server.jmx.Queue"
+    name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_validation-xml-schema_gw">
+    <depends optional-attribute-name="DestinationManager">
+      jboss.mq:service=DestinationManager
+    </depends>
+  </mbean>
+  <mbean code="org.jboss.mq.server.jmx.Queue"
+    name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_validation-xml-schema_esb">
+    <depends optional-attribute-name="DestinationManager">
+      jboss.mq:service=DestinationManager
+    </depends>
+  </mbean>
+</server>

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jboss-esb.xml
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jboss-esb.xml	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jboss-esb.xml	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,42 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb
+	xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd" parameterReloadSecs="5">
+
+	<providers>
+		<jms-provider name="JBossMQ"
+			connection-factory="ConnectionFactory">
+			<jms-bus busid="quickstartGwChannel">
+				<jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_validation-xml-schema_gw" />
+			</jms-bus>
+			<jms-bus busid="quickstartEsbChannel">
+				<jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_validation-xml-schema_esb" />
+			</jms-bus>
+
+		</jms-provider>
+	</providers>
+
+	<services>
+
+		<service category="FirstServiceESB" name="SimpleListener"
+			description="Hello World">
+			<listeners>
+				<jms-listener name="JMS-Gateway" busidref="quickstartGwChannel" is-gateway="true"/>
+				<jms-listener name="quickstart" busidref="quickstartEsbChannel"/>
+			</listeners>
+			<actions mep="OneWay">
+				<action name="print-before" class="org.jboss.soa.esb.actions.SystemPrintln">
+					<property name="message" value="[Validate against XML schema] Message before validation" />
+				</action>
+                <action name="xml-schema-validation" class="org.jboss.soa.esb.actions.validation.SchemaValidationAction">
+                    <property name="schema" value="/test.xsd"/>
+                </action>
+                <action name="print-after" class="org.jboss.soa.esb.actions.SystemPrintln">
+					<property name="message" value="[Validate against XML schema] Message after validation" />
+				</action>
+				<!-- The next action is for Continuous Integration testing -->
+				<action name="testStore" class="org.jboss.soa.esb.actions.TestMessageStore"/>
+			</actions>
+		</service>
+	</services>
+
+</jbossesb>

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jndi.properties
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jndi.properties	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/jndi.properties	2010-03-08 13:04:41 UTC (rev 31992)
@@ -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: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/log4j.xml
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/log4j.xml	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/log4j.xml	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,66 @@
+<?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"/>
+
+      <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>
+
+   <!-- ================ -->
+   <!-- Limit categories -->
+   <!-- ================ -->
+
+   <category name="org.jboss">
+      <priority value="WARN"/>
+   </category>
+   <category name="org.jboss.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.milyn">
+      <priority value="INFO"/>
+   </category>
+   <category name="org.jboss.soa.esb.smooks.SmooksAction">
+      <priority value="INFO"/>
+   </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="INFO"/>
+   </category>
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root>
+      <appender-ref ref="CONSOLE"/>
+   </root>
+
+</log4j:configuration>

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/readme.txt
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/readme.txt	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/readme.txt	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,19 @@
+Overview:
+=========
+  This is a very basic example of how to validate a Message
+  within JBoss ESB.  
+  
+Running this quickstart:
+========================
+  Please refer to 'ant help-quickstarts' for prerequisites about the quickstarts
+  and a more detailed descripton of the different ways to run the quickstarts.
+
+To Run:
+===========================
+  1. In a command terminal window in this folder ("Window1"), type 'ant deploy'.
+  2. Open another command terminal window in this folder ("Window2"), type
+     'ant runtest-valid' to send a valid message to JBoss ESB.
+  3. Switch back to Application Server console to see the output from the ESB
+  4. In this folder ("Window1"), type 'ant runtest-valid' to send an invalid message to JBoss ESB.
+  5. Switch back to Application Server console to see the output from the ESB
+  6. In this folder ("Window1"), type 'ant undeploy'.

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/samples/quickstart/validation_xml_schema/test/SendJMSMessage.java
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/samples/quickstart/validation_xml_schema/test/SendJMSMessage.java	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/org/jboss/soa/esb/samples/quickstart/validation_xml_schema/test/SendJMSMessage.java	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,93 @@
+/*
+ * 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.validation_xml_schema.test;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+
+import javax.jms.JMSException;
+import javax.jms.ObjectMessage;
+import javax.jms.Queue;
+import javax.jms.QueueConnection;
+import javax.jms.QueueConnectionFactory;
+import javax.jms.QueueSender;
+import javax.jms.QueueSession;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+import org.jboss.soa.esb.util.FileUtil;
+
+public class SendJMSMessage {
+	QueueConnection conn;
+	QueueSession session;
+	Queue que;
+
+	public void setupConnection() throws JMSException, NamingException {
+		InitialContext iniCtx = new InitialContext();
+		Object tmp = iniCtx.lookup("ConnectionFactory");
+		QueueConnectionFactory qcf = (QueueConnectionFactory) tmp;
+		conn = qcf.createQueueConnection();
+		que = (Queue) iniCtx
+				.lookup("queue/quickstart_validation-xml-schema_gw");
+		session = conn.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);
+		conn.start();
+		System.out.println("Connection Started");
+	}
+
+	public void stop() throws JMSException {
+		conn.stop();
+		session.close();
+		conn.close();
+	}
+
+	public void sendAMessage(String fileName) throws JMSException,
+			FileNotFoundException, IOException {
+
+		QueueSender send = session.createSender(que);
+		ObjectMessage tm;
+		File file = new File(fileName);
+
+		if (!file.exists()) {
+			throw new IllegalArgumentException("Input message file ["
+					+ file.getAbsolutePath() + "] not found.");
+		}
+
+		String message = FileUtil.readTextFile(file);
+
+		tm = session.createObjectMessage(message);
+		tm.setStringProperty("jbesbfilename", "validation-xml-schema.log");
+		send.send(tm);
+		send.close();
+
+		System.out
+				.println("*** Switch back to the ESB Java console now to see '"
+						+ fileName + "' before and after the transformation...");
+	}
+
+	public static void main(String args[]) throws Exception {
+		SendJMSMessage sm = new SendJMSMessage();
+		sm.setupConnection();
+		sm.sendAMessage(args[0]);
+		sm.stop();
+	}
+
+}
\ No newline at end of file

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/test.xsd
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/test.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/src/test.xsd	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+	<xs:element name="shiporder">
+		<xs:complexType>
+			<xs:sequence>
+				<xs:element name="orderperson" type="xs:string" />
+				<xs:element name="shipto">
+					<xs:complexType>
+						<xs:sequence>
+							<xs:element name="name" type="xs:string" />
+							<xs:element name="address" type="xs:string" />
+							<xs:element name="city" type="xs:string" />
+							<xs:element name="country" type="xs:string" />
+						</xs:sequence>
+					</xs:complexType>
+				</xs:element>
+				<xs:element name="item" maxOccurs="unbounded">
+					<xs:complexType>
+						<xs:sequence>
+							<xs:element name="title" type="xs:string" />
+							<xs:element name="note" type="xs:string" minOccurs="0" />
+							<xs:element name="quantity" type="xs:positiveInteger" />
+							<xs:element name="price" type="xs:decimal" />
+						</xs:sequence>
+					</xs:complexType>
+				</xs:element>
+			</xs:sequence>
+			<xs:attribute name="orderid" type="xs:string" use="required" />
+		</xs:complexType>
+	</xs:element>
+</xs:schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/test-invalid.xml
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/test-invalid.xml	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/test-invalid.xml	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<shiporder orderid="889923" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="shiporder.xsd">
+	<orderperson>John Smith</orderperson>
+	<shipto>
+		<name>Ola Nordmann</name>
+		<address>Langgt 23</address>
+		<city>4000 Stavanger</city>
+		<country>Norway</country>
+	</shipto>
+	<item>
+		<title>Empire Burlesque</title>
+		<note>Special Edition</note>
+		<quantity>-1</quantity>
+		<price>10.90</price>
+	</item>
+	<item>
+		<title>Hide your heart</title>
+		<quantity>1</quantity>
+		<price>9.90</price>
+	</item>
+</shiporder>
\ No newline at end of file

Added: labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/test.xml
===================================================================
--- labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/test.xml	                        (rev 0)
+++ labs/jbossesb/workspace/johan.kumps/product/samples/quickstarts/validation-xml-schema/test.xml	2010-03-08 13:04:41 UTC (rev 31992)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<shiporder orderid="889923" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="shiporder.xsd">
+	<orderperson>John Smith</orderperson>
+	<shipto>
+		<name>Ola Nordmann</name>
+		<address>Langgt 23</address>
+		<city>4000 Stavanger</city>
+		<country>Norway</country>
+	</shipto>
+	<item>
+		<title>Empire Burlesque</title>
+		<note>Special Edition</note>
+		<quantity>1</quantity>
+		<price>10.90</price>
+	</item>
+	<item>
+		<title>Hide your heart</title>
+		<quantity>1</quantity>
+		<price>9.90</price>
+	</item>
+</shiporder>
\ No newline at end of file



More information about the jboss-svn-commits mailing list