[jboss-cvs] JBossAS SVN: r67235 - projects/docs/trunk/Server_Configuration_Guide/en-US.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sun Nov 18 12:26:29 EST 2007


Author: skittoli at redhat.com
Date: 2007-11-18 12:26:29 -0500 (Sun, 18 Nov 2007)
New Revision: 67235

Modified:
   projects/docs/trunk/Server_Configuration_Guide/en-US/Author_Group.xml
   projects/docs/trunk/Server_Configuration_Guide/en-US/EJB3.xml
   projects/docs/trunk/Server_Configuration_Guide/en-US/Web_Services.xml
Log:
minor fixes-authors and web services files

Modified: projects/docs/trunk/Server_Configuration_Guide/en-US/Author_Group.xml
===================================================================
--- projects/docs/trunk/Server_Configuration_Guide/en-US/Author_Group.xml	2007-11-18 16:47:36 UTC (rev 67234)
+++ projects/docs/trunk/Server_Configuration_Guide/en-US/Author_Group.xml	2007-11-18 17:26:29 UTC (rev 67235)
@@ -11,6 +11,15 @@
 			<orgname>Red Hat</orgname>
 		</affiliation>-->
 	</author>
+	<author>
+		<firstname>Bill</firstname>
+		<surname>Burke</surname>
+		<!--<affiliation>
+			<shortaffil></shortaffil>
+			<jobtitle></jobtitle>
+			<orgname>Red Hat</orgname>
+		</affiliation>-->
+	</author>
 	
 	<author>
 		<firstname>Carlo</firstname>
@@ -23,6 +32,16 @@
 	</author>
 	
 	<author>
+		<firstname>Heiko</firstname>
+		<surname>Braun</surname>
+		<!--<affiliation>
+			<shortaffil></shortaffil>
+			<jobtitle></jobtitle>
+			<orgname>Red Hat</orgname>
+		</affiliation>-->
+	</author>
+	
+	<author>
 		<firstname>Michael</firstname>
 		<surname>Yuan</surname>
 	<!--	<affiliation>

Modified: projects/docs/trunk/Server_Configuration_Guide/en-US/EJB3.xml
===================================================================
--- projects/docs/trunk/Server_Configuration_Guide/en-US/EJB3.xml	2007-11-18 16:47:36 UTC (rev 67234)
+++ projects/docs/trunk/Server_Configuration_Guide/en-US/EJB3.xml	2007-11-18 17:26:29 UTC (rev 67235)
@@ -5,12 +5,12 @@
 <chapter id="EJB3_Services">
 	<title>Enterprise Applications with EJB3 Services</title>
 	
-	<!--<para>In the previous chapter, we discussed how to write simple web applications packaged in WAR files. Using JavaServer Faces (JSF), you can write web applications that conform to strict MVC-based component models. However, for most JBoss platform users, the web applcation in the WAR is just the UI frontend. The real business logic of the application, such as database access, transactions, secuirty etc., is handled by enterprise business components such as Enterprise JavaBeans (EJBs).</para>-->
 	
-	<para>EJB3 (Enterprise JavaBean 3.0) provides the core component model for Java EE 5 applications. An EJB3 bean is a managed component that is automatically wired to take advantage of all services the J2EE server container provides, such as transaction, security, persistence, naming, dependency injection, etc. The managed component allows developers to focus on the business logic, and leave the cross-cutting concerns to the container as configurations. As an application developer, you need not create or destroy the components yourself. You only need to ask for an EJB3 bean from the Java EE container by its name, and then you can call its methods with all configured container services applied. You can get access to an EJB3 bean from either inside or outside of the J2EE container.</para>
 	
-	<para>JBoss AS 4.2 supports EJB3 out of the box. For JBoss AS 4.0.x, you can add support for EJB3 by manually installing the JBoss EJB3 deployer, or installing the server from a JEMS GUI installer and select a EJB3 profile.</para>
+	<para>EJB3 (Enterprise Java Bean 3.0) provides the core component model for Java EE 5 applications. An EJB3 bean is a managed component that is automatically wired to take advantage of all services the Java EE 5 server container provides, such as transaction, security, persistence, naming, dependency injection, etc. The managed component allows developers to focus on the business logic, and leave the cross-cutting concerns to the container as configurations. As an application developer, you need not create or destroy the components yourself. You only need to ask for an EJB3 bean from the Java EE container by its name, and then you can call its methods with all configured container services applied. You can get access to an EJB3 bean from either inside or outside of the Java EE container. </para>
 	
+	<para>JBoss AS 4.2 supports EJB3 out of the box. Note that JBoss AS 4.2 is a J2EE server, so it does not support the full EJB3 feature set. </para>
+	
 	<para>The details of the EJB3 component programming model is beyond the scope of this guide. Most EJB3 interfaces and annotations are part of the Java EE 5 standard and hence they are the same for all Java EE 5 compliant application servers. Interested readers should refer to the EJB3 specification or numerous EJB3 books to learn more about EJB3 programming.</para>
 	
 	<para>In this chapter, we only cover EJB3 configuration issues that are specific to the JBoss AS. For instance, we discuss the JNDI naming conventions for EJB3 components inside the JBoss AS, the optional configurations for the Hibernate persistence engine for entity beans, as well as custom options in the JBoss EJB3 deployer.</para>
@@ -38,12 +38,12 @@
 ]]>
         </programlisting>
 		
-		<para>When you invoke a session bean method, the method execution is automatically managed by the transaction manager and the security manager in the server. You can specify the transactional or security properties for each method using annotations on the method. A session bean instance can be reused by many clients. Depending on whether the server maintains the bean&#39;s internal state between two clients, the session bean can be stateless or stateful. Depending on whether the bean is available to remote clients (i.e., clients outside of the current JVM for the server), the session bean can be local or remote. All these are configurable via standard annotations on the beans.</para>
+	<para>When you invoke a session bean method, the method execution is automatically managed by the transaction manager and the security manager in the server. You can specify the transactional or security properties for each method using annotations on the method. A session bean instance can be reused by many clients. Depending on whether the server maintains the bean's internal state between two clients, the session bean can be stateless or stateful. Depending on whether the bean has a remote business interface clients outside of the current JVM can call upon the EJB3 bean. All these are configurable via standard annotations on the beans.  Note that the transactional or security properties are only active when the bean is called through a business interface.</para>
 		
-		<para>After you define a session bean, how does the client get access to it? As we discussed, the client does not create or destroy EJB3 components, it merely asks the server for a reference of an existing instance managed by the server. That is done via JNDI. In JBoss AS, the default local JNDI name for a session bean is dependent on the deployment packaging of the bean class.</para>
+	<para>After you define a session bean, how does the client get a reference to it? As we discussed, the client does not create or destroy EJB3 components, it merely asks the server for a reference of an existing instance managed by the server. That is done via JNDI. In JBoss AS, the default local JNDI name for a session bean is dependent on the deployment packaging of the bean class.</para>
 		
 		<itemizedlist>
-          <listitem><para>If the bean is deployed in a standalone JAR file in the <varname>jboss-as/production/deploy</varname> directory, the bean is accessible via local JNDI name <varname>MyBean/local</varname>, where <varname>MyBean</varname> is the implementation class name of the bean as we showed earlier. The "local" JNDI in JBoss AS means that the JNDI name is relative to <varname>java:comp/env/</varname>.</para></listitem>
+          <listitem><para>If the bean is deployed in a standalone JAR file in the <varname>JBOSS_DIST/default/deploy</varname> directory, the bean is accessible via local JNDI name <varname>MyBean/local</varname>, where <varname>MyBean</varname> is the implementation class name of the bean as we showed earlier. The "local" JNDI in JBoss AS means that the JNDI name is relative to <varname>java:comp/env/</varname>.</para></listitem>
           <listitem><para>If the JAR file containing the bean is packaged in an EAR file, the local JNDI name for the bean is <varname>myapp/MyBean/local</varname>, where <varname>myapp</varname> is the root name of the EAR archive file (e.g., <varname>myapp.ear</varname>, see later for the EAR packaging of EJB3 beans). </para></listitem>
         </itemizedlist>
 		
@@ -188,7 +188,7 @@
 @PersistenceContext
 EntityManager em;
 
-Customer customer = new Cutomer ();
+Customer customer = new Customer ();
 // populate data in customer
 
 // Save the newly created customer object to DB
@@ -258,7 +258,7 @@
         <section>
           <title>Use Alternative Databases</title>
           
-	  <para>To use an alternative database other than the built-in HSQL DB to back your entity beans, you need to first define the data source for the database and register it in the JNDI. This is done via the *-ds.xml files in the deploy directory. Please see <xref linkend="Connectors_on_JBoss-Configuring_JDBC_DataSources"/> for more details. Examples of *-ds.xml files for various databases are available in jboss-as/docs/examples/jca directory in the server.</para>
+	  <para>To use an alternative database other than the built-in HSQL DB to back your entity beans, you need to first define the data source for the database and register it in the JNDI. This is done via the *-ds.xml files in the deploy directory. Please see <xref linkend="Connectors_on_JBoss-Configuring_JDBC_DataSources"/> for more details. Examples of *-ds.xml files for various databases are available in JBOSS_DIST/docs/examples/jca directory in the server.</para>
           
           <para>Then, in the persistence.xml, you need to change the jta-data-source attribute to point to the new data source in JNDI (e.g., java:/MysqlDS if you are using the default mysql-ds.xml to setup a MySQL external database).</para>
           
@@ -278,7 +278,7 @@
         <section>
           <title>Default Hibernate options</title>
           
-	  <para>Hibernate has many configuration properties. For the properties that you do not specify in the persistence.xml file, JBoss AS will provide a reasonable set of default values. The default Hibernate property values are specified in the <varname>jboss-as/server/production/deploy/ejb3.deployer/MEAT-INF/persistence.properties</varname> file. Below is the <varname>persistence.properties</varname> file bundled in JBoss AS 4.2. Notice the options that are commented out. They give you an idea of available properties in your <varname>persistence.xml</varname> file.</para>
+	  <para>Hibernate has many configuration properties. For the properties that you do not specify in the persistence.xml file, JBoss AS will provide a reasonable set of default values. The default Hibernate property values are specified in the <varname>JBOSS_DIST/server/default/deploy/ejb3.deployer/MEAT-INF/persistence.properties</varname> file. Below is the <varname>persistence.properties</varname> file bundled in JBoss AS 4.2. Notice the options that are commented out. They give you an idea of available properties in your <varname>persistence.xml</varname> file.</para>
           
           <programlisting>
 <![CDATA[
@@ -398,9 +398,9 @@
 		<section>
 		  <title>Deploy the EJB3 JAR</title>
 		
-		  <para>When you drop JAR files into the <varname>jboss-as/server/production/deploy/</varname> directory, it will be automatically picked up and processed by the server. All the EJB3 beans defined in the JAR file will then be available to other applications deployed inside or outside of the server via JNDI names like <varname>MyBean/local</varname>, where <varname>MyBean</varname> is the implementation class name for the session bean. The deployment is done via the JBoss EJB3 deployer in jboss-as/server/production/ejb3.deployer/. The META-INF/persistence.properties file we discussed earlier to configure the default behavior of EJB3 entity manager is located in the EJB3 deployer.</para>
+		  <para>When you drop JAR files into the <varname>JBOSS_DIST/server/default/deploy/</varname> directory, it will be automatically picked up and processed by the server. All the EJB3 beans defined in the JAR file will then be available to other applications deployed inside or outside of the server via JNDI names like <varname>MyBean/local</varname>, where <varname>MyBean</varname> is the implementation class name for the session bean. The deployment is done via the JBoss EJB3 deployer in JBOSS_DIST/server/default/ejb3.deployer/. The META-INF/persistence.properties file we discussed earlier to configure the default behavior of EJB3 entity manager is located in the EJB3 deployer.</para>
 		  
-		  <para>The EJB3 deployer automatically scans JARs on the classpath to look for EJB3 annotations. When it finds classes with EJB3 annotations, it would deploy them as EJB3 services. However, scanning all JARs on the classpath could be very time-consuming if you have large applications with many JARs deployed. In the jboss-as/server/production/ejb3.deployer/META-INF/jboss-service.xml file, you can tell the EJB3 deployer to ignore JARs you know do not contain EJB3 beans. The non-EJB3 JAR files shipped with the JBoss AS are already listed in the jboss.ejb3:service=JarsIgnoredForScanning MBean service:</para>
+		  <para>The EJB3 deployer automatically scans JARs on the classpath to look for EJB3 annotations. When it finds classes with EJB3 annotations, it would deploy them as EJB3 services. However, scanning all JARs on the classpath could be very time-consuming if you have large applications with many JARs deployed. In the JBOSS_DIST/server/default/ejb3.deployer/META-INF/jboss-service.xml file, you can tell the EJB3 deployer to ignore JARs you know do not contain EJB3 beans. The non-EJB3 JAR files shipped with the JBoss AS are already listed in the jboss.ejb3:service=JarsIgnoredForScanning MBean service:</para>
 		  
 		  
 		  <programlisting>
@@ -496,7 +496,7 @@
 ]]>
 		  </programlisting>
 		  
-		  <para>The EAR deployment is configured by the jboss-as/server/production/deploy/ear-deploy.xml file. This file contains three attributes as follows.</para>
+		  <para>The EAR deployment is configured by the JBOSS_DIST/server/default/deploy/ear-deploy.xml file. This file contains three attributes as follows.</para>
 		  
 		  <programlisting>
 <![CDATA[

Modified: projects/docs/trunk/Server_Configuration_Guide/en-US/Web_Services.xml
===================================================================
--- projects/docs/trunk/Server_Configuration_Guide/en-US/Web_Services.xml	2007-11-18 16:47:36 UTC (rev 67234)
+++ projects/docs/trunk/Server_Configuration_Guide/en-US/Web_Services.xml	2007-11-18 17:26:29 UTC (rev 67235)
@@ -243,18 +243,17 @@
 		<para>
 			A JAX-WS java service endpoint (JSE) is deployed as a web application. 
 			
-<programlisting>
-	<![CDATA[
-	 <web-app ...>
-		 <servlet>
+<programlisting><![CDATA[
+<web-app ...>
+	 <servlet>
+	 <servlet-name>TestService</servlet-name>
+	 <servlet-class>org.jboss.test.ws.jaxws.samples.jsr181pojo.JSEBean01</servlet-class>
+	 </servlet>
+	 <servlet-mapping>
 		 <servlet-name>TestService</servlet-name>
-		 <servlet-class>org.jboss.test.ws.jaxws.samples.jsr181pojo.JSEBean01</servlet-class>
-		 </servlet>
-		 <servlet-mapping>
-			 <servlet-name>TestService</servlet-name>
-			 <url-pattern>/*</url-pattern>
-				 </servlet-mapping>
-			</web-app> ]]>
+		 <url-pattern>/*</url-pattern>
+			 </servlet-mapping>
+</web-app> ]]>
 </programlisting>
 						
 		</para>
@@ -470,25 +469,25 @@
   }]]> </programlisting>
 			<para>The service endpoint interface (SEI) is usually generated using tools. For details see <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=JAX-WS_User_Guide#_Top_Down_.28WSDL_to_Java.29"># Top Down (WSDL to Java)</ulink></para>
 			<para>A generated static <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=JAX-WS_User_Guide#Service">#Service</ulink> usually also offers typed methods to get ports. These methods also return dynamic proxies that implement the SEI.</para>
-			<programlisting> <![CDATA[
-						  @WebServiceClient(name = &quot;TestEndpointService&quot;, targetNamespace = &quot;http://org.jboss.ws/wsref&quot;, 
-						  wsdlLocation = &quot;http://localhost.localdomain:8080/jaxws-samples-webserviceref?wsdl&quot;)
-						  
-						  public class TestEndpointService extends Service
-						  {
-						  ...
-						  
-						  public TestEndpointService(URL wsdlLocation, QName serviceName) {
-						  super(wsdlLocation, serviceName);
-						  }
-						  
-						  @WebEndpoint(name = &quot;TestEndpointPort&quot;)
-						  public TestEndpoint getTestEndpointPort() 
-						  {
-						  return (TestEndpoint)super.getPort(TESTENDPOINTPORT, TestEndpoint.class);
-						  }
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebServiceClient(name = &quot;TestEndpointService&quot;, targetNamespace = &quot;http://org.jboss.ws/wsref&quot;, 
+  wsdlLocation = &quot;http://localhost.localdomain:8080/jaxws-samples-webserviceref?wsdl&quot;)
+  
+	public class TestEndpointService extends Service
+	{
+	...
+	  
+	public TestEndpointService(URL wsdlLocation, QName serviceName) {
+	super(wsdlLocation, serviceName);
+	}
+	  
+	@WebEndpoint(name = &quot;TestEndpointPort&quot;)
+	public TestEndpoint getTestEndpointPort() 
+	{
+	return (TestEndpoint)super.getPort(TESTENDPOINTPORT, TestEndpoint.class);
+	}
+  }
+  ]]> </programlisting>
 		</section>
 		<section>
 			<title>WebServiceRef</title>
@@ -502,15 +501,15 @@
 					<para> To define a reference whose type is a SEI. In this case, the type element MAY be present with its default value if the type of the reference can be inferred from the annotated field/method declaration, but the value element MUST always be present and refer to a generated service class type (a subtype of javax.xml.ws.Service). The wsdlLocation element, if present, overrides theWSDL location information specified in the WebService annotation of the referenced generated service class.</para>
 				</listitem>
 			</orderedlist>
-			<programlisting> <![CDATA[
-						  public class EJB3Client implements EJB3Remote
-						  {
-						  @WebServiceRef
-						  public TestEndpointService service4;
-						  
-						  @WebServiceRef
-						  public TestEndpoint port3;
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+public class EJB3Client implements EJB3Remote
+{
+ @WebServiceRef
+ public TestEndpointService service4;
+   
+ @WebServiceRef
+ public TestEndpoint port3;
+]]> </programlisting>
 			<para>
 				<emphasis role="bold">WebServiceRef Customization</emphasis>
 			</para>
@@ -527,37 +526,37 @@
 				</listitem>
 			</itemizedlist>
 			<para>Example:</para>
-			<programlisting> <![CDATA[
-						  &lt;service-ref&gt;
-						  &lt;service-ref-name&gt;OrganizationService&lt;/service-ref-name&gt;
-						  &lt;wsdl-override&gt;file:/wsdlRepository/organization-service.wsdl&lt;/wsdl-override&gt;
-						  &lt;/service-ref&gt;
-						  
-						  &lt;service-ref&gt;
-						  &lt;service-ref-name&gt;OrganizationService&lt;/service-ref-name&gt;
-						  &lt;config-name&gt;Secure Client Config&lt;/config-name&gt;
-						  &lt;config-file&gt;META-INF/jbossws-client-config.xml&lt;/config-file&gt;
-						  &lt;handler-chain&gt;META-INF/jbossws-client-handlers.xml&lt;/handler-chain&gt;
-						  &lt;/service-ref&gt;
-						  
-						  &lt;service-ref&gt;
-						  &lt;service-ref-name&gt;SecureService&lt;/service-ref-name&gt;
-						  &lt;service-class-name&gt;org.jboss.tests.ws.jaxws.webserviceref.SecureEndpointService&lt;/service-class-name&gt;
-						  &lt;service-qname&gt;{http://org.jboss.ws/wsref}SecureEndpointService&lt;/service-qname&gt;
-						  &lt;port-info&gt;
-						  &lt;service-endpoint-interface&gt;org.jboss.tests.ws.jaxws.webserviceref.SecureEndpoint&lt;/service-endpoint-interface&gt;
-						  &lt;port-qname&gt;{http://org.jboss.ws/wsref}SecureEndpointPort&lt;/port-qname&gt;
-						  &lt;stub-property&gt;
-						  &lt;name&gt;javax.xml.ws.security.auth.username&lt;/name&gt;
-						  &lt;value&gt;kermit&lt;/value&gt;
-						  &lt;/stub-property&gt;
-						  &lt;stub-property&gt;
-						  &lt;name&gt;javax.xml.ws.security.auth.password&lt;/name&gt;
-						  &lt;value&gt;thefrog&lt;/value&gt;
-						  &lt;/stub-property&gt;
-						  &lt;/port-info&gt;
-						  &lt;/service-ref&gt;
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;service-ref&gt;
+&lt;service-ref-name&gt;OrganizationService&lt;/service-ref-name&gt;
+&lt;wsdl-override&gt;file:/wsdlRepository/organization-service.wsdl&lt;/wsdl-override&gt;
+&lt;/service-ref&gt;
+.. 
+&lt;service-ref&gt;
+&lt;service-ref-name&gt;OrganizationService&lt;/service-ref-name&gt;
+&lt;config-name&gt;Secure Client Config&lt;/config-name&gt;
+&lt;config-file&gt;META-INF/jbossws-client-config.xml&lt;/config-file&gt;
+&lt;handler-chain&gt;META-INF/jbossws-client-handlers.xml&lt;/handler-chain&gt;
+&lt;/service-ref&gt;
+  
+&lt;service-ref&gt;
+&lt;service-ref-name&gt;SecureService&lt;/service-ref-name&gt;
+&lt;service-class-name&gt;org.jboss.tests.ws.jaxws.webserviceref.SecureEndpointService&lt;/service-class-name&gt;
+&lt;service-qname&gt;{http://org.jboss.ws/wsref}SecureEndpointService&lt;/service-qname&gt;
+&lt;port-info&gt;
+&lt;service-endpoint-interface&gt;org.jboss.tests.ws.jaxws.webserviceref.SecureEndpoint&lt;/service-endpoint-interface&gt;
+&lt;port-qname&gt;{http://org.jboss.ws/wsref}SecureEndpointPort&lt;/port-qname&gt;
+&lt;stub-property&gt;
+&lt;name&gt;javax.xml.ws.security.auth.username&lt;/name&gt;
+&lt;value&gt;kermit&lt;/value&gt;
+&lt;/stub-property&gt;
+&lt;stub-property&gt;
+&lt;name&gt;javax.xml.ws.security.auth.password&lt;/name&gt;
+&lt;value&gt;thefrog&lt;/value&gt;
+&lt;/stub-property&gt;
+&lt;/port-info&gt;
+&lt;/service-ref&gt;
+]]> </programlisting>
 			<para>For details please see <emphasis role="bold">service-ref_5_0.dtd</emphasis> in the jboss docs directory.</para>
 		</section>
 		<section>
@@ -567,16 +566,16 @@
 			<para><emphasis role="bold">Message</emphasis> In this mode, client applications work directly with protocol-specific message structures. E.g., when used with a SOAP protocol binding, a client application would work directly with a SOAP message.</para>
 			<para><emphasis role="bold">Message Payload</emphasis> In this mode, client applications work with the payload of messages rather than the messages themselves. E.g., when used with a SOAP protocol binding, a client application would work with the contents of the SOAP Body rather than the SOAP message as a whole.</para>
 			<para>Dispatch is a low level API that requires clients to construct messages or message payloads as XML and requires an intimate knowledge of the desired message or payload structure. Dispatch is a generic class that supports input and output of messages or message payloads of any type.</para>
-			<programlisting> <![CDATA[
-						  Service service = Service.create(wsdlURL, serviceName);
-						  Dispatch dispatch = service.createDispatch(portName, StreamSource.class, Mode.PAYLOAD);
-						  
-						  String payload = &quot;&lt;ns1:ping xmlns:ns1=&apos;http://oneway.samples.jaxws.ws.test.jboss.org/&apos;/&gt;&quot;;
-						  dispatch.invokeOneWay(new StreamSource(new StringReader(payload)));
-						  
-						  payload = &quot;&lt;ns1:feedback xmlns:ns1=&apos;http://oneway.samples.jaxws.ws.test.jboss.org/&apos;/&gt;&quot;;
-						  Source retObj = (Source)dispatch.invoke(new StreamSource(new StringReader(payload)));
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+Service service = Service.create(wsdlURL, serviceName);
+Dispatch dispatch = service.createDispatch(portName, StreamSource.class, Mode.PAYLOAD);
+  
+String payload = &quot;&lt;ns1:ping xmlns:ns1=&apos;http://oneway.samples.jaxws.ws.test.jboss.org/&apos;/&gt;&quot;;
+dispatch.invokeOneWay(new StreamSource(new StringReader(payload)));
+  
+payload = &quot;&lt;ns1:feedback xmlns:ns1=&apos;http://oneway.samples.jaxws.ws.test.jboss.org/&apos;/&gt;&quot;;
+Source retObj = (Source)dispatch.invoke(new StreamSource(new StringReader(payload)));
+]]> </programlisting>
 		</section>
 		<section>
 			<title>Asynchronous Invocations</title>
@@ -593,48 +592,48 @@
 			</para>-->
 			
 			<para>BindingProvider instances may provide asynchronous operation capabilities. When used, asynchronous operation invocations are decoupled from the BindingProvider instance at invocation time such that the response context is not updated when the operation completes. Instead a separate response context is made available using the Response interface.</para>
-			<programlisting> <![CDATA[
-						  public void testInvokeAsync() throws Exception
-						  {
-						  URL wsdlURL = new URL(&quot;http://&quot; + getServerHost() + &quot;:8080/jaxws-samples-asynchronous?wsdl&quot;);
-						  QName serviceName = new QName(targetNS, &quot;TestEndpointService&quot;);
-						  Service service = Service.create(wsdlURL, serviceName);
-						  TestEndpoint port = service.getPort(TestEndpoint.class);
-						  
-						  Response response = port.echoAsync(&quot;Async&quot;);
-						  
-						  // access future
-						  String retStr = (String) response.get();
-						  assertEquals(&quot;Async&quot;, retStr);
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+public void testInvokeAsync() throws Exception
+{
+URL wsdlURL = new URL(&quot;http://&quot; + getServerHost() + &quot;:8080/jaxws-samples-asynchronous?wsdl&quot;);
+QName serviceName = new QName(targetNS, &quot;TestEndpointService&quot;);
+Service service = Service.create(wsdlURL, serviceName);
+TestEndpoint port = service.getPort(TestEndpoint.class);
+  
+Response response = port.echoAsync(&quot;Async&quot;);
+  
+// access future
+String retStr = (String) response.get();
+assertEquals(&quot;Async&quot;, retStr);
+}
+]]> </programlisting>
 		</section>
 		<section>
 			<title>Oneway Invocations</title>
 			<para>@Oneway indicates that the given web method has only an input message and no output. Typically, a oneway method returns the thread of control to the calling application prior to executing the actual business method.</para>
-			<programlisting> <![CDATA[
-						  @WebService (name=&quot;PingEndpoint&quot;)
-						  @SOAPBinding(style = SOAPBinding.Style.RPC)
-						  public class PingEndpointImpl
-						  {
-						  private static String feedback;
-						  
-						  @WebMethod
-						  @Oneway
-						  public void ping()
-						  {
-						  log.info(&quot;ping&quot;);
-						  feedback = &quot;ok&quot;;
-						  }
-						  
-						  @WebMethod
-						  public String feedback()
-						  {
-						  log.info(&quot;feedback&quot;);
-						  return feedback;
-						  }
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebService (name=&quot;PingEndpoint&quot;)
+ at SOAPBinding(style = SOAPBinding.Style.RPC)
+public class PingEndpointImpl
+{
+ private static String feedback;
+.. 
+ at WebMethod
+ at Oneway
+public void ping()
+{
+log.info(&quot;ping&quot;);
+feedback = &quot;ok&quot;;
+}
+.. 
+ at WebMethod
+public String feedback()
+{
+log.info(&quot;feedback&quot;);
+return feedback;
+}
+}
+]]> </programlisting>
 		</section>
 	</section>
 	<section>
@@ -667,14 +666,14 @@
 			<section>
 				<title>Service endpoint handlers</title>
 				<para>On the service endpoint, handlers are defined using the @HandlerChain annotation.</para>
-				<programlisting> <![CDATA[
-							  @WebService
-							  @HandlerChain(file = &quot;jaxws-server-source-handlers.xml&quot;)
-							  public class SOAPEndpointSourceImpl
-							  {
-							  ...
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebService
+ at HandlerChain(file = &quot;jaxws-server-source-handlers.xml&quot;)
+public class SOAPEndpointSourceImpl
+{
+...
+}
+]]> </programlisting>
 				<para>The location of the handler chain file supports 2 formats</para>
 				<para>1. An absolute java.net.URL in externalForm. (ex: <ulink url="http://myhandlers.foo.com/handlerfile1.xml">http://myhandlers.foo.com/handlerfile1.xml</ulink>)</para>
 				<para>2. A relative path from the source file or class file. (ex: bar/handlerfile1.xml)</para>
@@ -682,17 +681,17 @@
 			<section>
 				<title>Service client handlers</title>
 				<para>On the client side, handler can be configured using the @HandlerChain annotation on the SEI or dynamically using the API.</para>
-				<programlisting> <![CDATA[
-							  Service service = Service.create(wsdlURL, serviceName);
-							  Endpoint port = (Endpoint)service.getPort(Endpoint.class);
-							  
-							  BindingProvider bindingProvider = (BindingProvider)port;
-							  List&lt;Handler&gt; handlerChain = new ArrayList&lt;Handler&gt;();
-							  handlerChain.add(new LogHandler());
-							  handlerChain.add(new AuthorizationHandler());
-							  handlerChain.add(new RoutingHandler());
-							  bindingProvider.getBinding().setHandlerChain(handlerChain); // important!
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+Service service = Service.create(wsdlURL, serviceName);
+Endpoint port = (Endpoint)service.getPort(Endpoint.class);
+  
+BindingProvider bindingProvider = (BindingProvider)port;
+List&lt;Handler&gt; handlerChain = new ArrayList&lt;Handler&gt;();
+handlerChain.add(new LogHandler());
+handlerChain.add(new AuthorizationHandler());
+handlerChain.add(new RoutingHandler());
+bindingProvider.getBinding().setHandlerChain(handlerChain); // important!
+]]> </programlisting>
 			</section>
 		</section>
 		<section>
@@ -702,10 +701,10 @@
 			<section>
 				<title>Accessing the message context</title>
 				<para>There is currently no portable way of doing this in 4.0.5. <literal>@WebServiceContext</literal> injection will be available with 4.2. In the meantime you can access the message context like this:</para>
-				<programlisting> <![CDATA[
-							  CommonMessageContext msgContext = MessageContextAssociation.peekMessageContext(); 
-							  msgContext.setProperty(&lt;Name&gt;, &lt;Value&gt;);
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+CommonMessageContext msgContext = MessageContextAssociation.peekMessageContext(); 
+msgContext.setProperty(&lt;Name&gt;, &lt;Value&gt;);
+]]> </programlisting>
 			</section>
 			<section>
 				<title>Logical Message Context</title>
@@ -719,23 +718,23 @@
 		<section>
 			<title>Fault Handling</title>
 			<para>An implementation may thow a SOAPFaultException</para>
-			<programlisting> <![CDATA[
-						  public void throwSoapFaultException()
-						  {
-						  SOAPFactory factory = SOAPFactory.newInstance();
-						  SOAPFault fault = factory.createFault(&quot;this is a fault string!&quot;, new QName(&quot;http://foo&quot;, &quot;FooCode&quot;));
-						  fault.setFaultActor(&quot;mr.actor&quot;);
-						  fault.addDetail().addChildElement(&quot;test&quot;);
-						  throw new SOAPFaultException(fault);
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+public void throwSoapFaultException()
+{
+SOAPFactory factory = SOAPFactory.newInstance();
+SOAPFault fault = factory.createFault(&quot;this is a fault string!&quot;, new QName(&quot;http://foo&quot;, &quot;FooCode&quot;));
+fault.setFaultActor(&quot;mr.actor&quot;);
+fault.addDetail().addChildElement(&quot;test&quot;);
+throw new SOAPFaultException(fault);
+}
+]]> </programlisting>
 			<para>or an application specific user exception</para>
-			<programlisting> <![CDATA[
-						  public void throwApplicationException() throws UserException
-						  {
-						  throw new UserException(&quot;validation&quot;, 123, &quot;Some validation error&quot;);
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+public void throwApplicationException() throws UserException
+{
+throw new UserException(&quot;validation&quot;, 123, &quot;Some validation error&quot;);
+}
+]]> </programlisting>
 		<para>	
 			<note><title>Note</title>
 			<para>In case of the latter JBossWS generates the required fault wrapper beans at runtime if they are not part of the deployment</para>
@@ -841,23 +840,23 @@
 				<para>
 					<emphasis role="bold">MTOM enabled service implementations</emphasis>
 				</para>
-				<programlisting> <![CDATA[
-							  package org.jboss.test.ws.jaxws.samples.xop.doclit;
-							  
-							  import javax.ejb.Remote;
-							  import javax.jws.WebService;
-							  import javax.jws.soap.SOAPBinding;
-							  import javax.xml.ws.BindingType;
-							  
-							  @Remote
-							  @WebService(targetNamespace = &quot;http://org.jboss.ws/xop/doclit&quot;)
-							  @SOAPBinding(style = SOAPBinding.Style.DOCUMENT, parameterStyle = SOAPBinding.ParameterStyle.BARE)
-							  @BindingType(value=&quot;http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true&quot;)                         (1)
-							  public interface MTOMEndpoint {
-							  
-							  [...]
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+package org.jboss.test.ws.jaxws.samples.xop.doclit;
+  
+import javax.ejb.Remote;
+import javax.jws.WebService;
+import javax.jws.soap.SOAPBinding;
+import javax.xml.ws.BindingType;
+  
+ at Remote
+ at WebService(targetNamespace = &quot;http://org.jboss.ws/xop/doclit&quot;)
+ at SOAPBinding(style = SOAPBinding.Style.DOCUMENT, parameterStyle = SOAPBinding.ParameterStyle.BARE)
+ at BindingType(value=&quot;http://schemas.xmlsoap.org/wsdl/soap/http?mtom=true&quot;)                         (1)
+public interface MTOMEndpoint {
+  
+[...]
+}
+]]> </programlisting>
 				<orderedlist>
 					<listitem>
 						<para>The MTOM enabled SOAP 1.1 binding ID</para>
@@ -867,15 +866,15 @@
 					<emphasis role="bold">MTOM enabled clients</emphasis>
 				</para>
 				<para>Web service clients can use the same approach described above or rely on the <literal>Binding</literal> API to enable MTOM (Excerpt taken from the <literal>org.jboss.test.ws.jaxws.samples.xop.doclit.XOPTestCase</literal>):</para>
-				<programlisting> <![CDATA[
-							  [...]
-							  Service service = Service.create(wsdlURL, serviceName);
-							  port = service.getPort(MTOMEndpoint.class);
-							  
-							  // enable MTOM
-							  binding = (SOAPBinding)((BindingProvider)port).getBinding();
-							  binding.setMTOMEnabled(true);
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+[...]
+Service service = Service.create(wsdlURL, serviceName);
+port = service.getPort(MTOMEndpoint.class);
+  
+// enable MTOM
+binding = (SOAPBinding)((BindingProvider)port).getBinding();
+binding.setMTOMEnabled(true);
+]]> </programlisting>
 				<para>
 					<note><title>Note</title>
 				
@@ -891,71 +890,71 @@
 			<section>
 				<title>Using SwaRef with JAX-WS endpoints</title>
 				<para>JAX-WS endpoints delegate all marshalling/unmarshalling to the JAXB API. The most simple way to enable SwaRef encoding for <literal>DataHandler</literal> types is to annotate a payload bean with the <literal>@XmlAttachmentRef</literal> annotation as shown below:</para>
-				<programlisting> <![CDATA[
-							  /**
-							  * Payload bean that will use SwaRef encoding
-							  */
-							  @XmlRootElement
-							  public class DocumentPayload
-							  {
-							  private DataHandler data;
-							  
-							  public DocumentPayload()
-							  {
-							  }
-							  
-							  public DocumentPayload(DataHandler data)
-							  {
-							  this.data = data;
-							  }
-							  
-							  @XmlElement
-							  @XmlAttachmentRef
-							  public DataHandler getData()
-							  {
-							  return data;
-							  }
-							  
-							  public void setData(DataHandler data)
-							  {
-							  this.data = data;
-							  }
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+/**
+* Payload bean that will use SwaRef encoding
+*/
+ at XmlRootElement
+public class DocumentPayload
+{
+private DataHandler data;
+  
+public DocumentPayload()
+{
+}
+  
+public DocumentPayload(DataHandler data)
+{
+this.data = data;
+}
+  
+ at XmlElement
+ at XmlAttachmentRef
+public DataHandler getData()
+{
+return data;
+}
+  
+public void setData(DataHandler data)
+{
+this.data = data;
+}
+}
+]]> </programlisting>
 				<para>With document wrapped endpoints you may even specify the <literal>@XmlAttachmentRef</literal> annotation on the service endpoint interface:</para>
-				<programlisting> <![CDATA[
-							  @WebService
-							  public interface DocWrappedEndpoint
-							  {
-							  @WebMethod
-							  DocumentPayload beanAnnotation(DocumentPayload dhw, String test);
-							  
-							  @WebMethod
-							  @XmlAttachmentRef
-							  DataHandler parameterAnnotation(@XmlAttachmentRef DataHandler data, String test);
-							  
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebService
+public interface DocWrappedEndpoint
+{
+ at WebMethod
+DocumentPayload beanAnnotation(DocumentPayload dhw, String test);
+  
+ at WebMethod
+ at XmlAttachmentRef
+DataHandler parameterAnnotation(@XmlAttachmentRef DataHandler data, String test);
+  
+}
+]]> </programlisting>
 				<para>The message would then refer to the attachment part by CID:</para>
-				<programlisting> <![CDATA[
-							  &lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
-							  &lt;env:Header/&gt;
-							  &lt;env:Body&gt;
-							  &lt;ns2:parameterAnnotation xmlns:ns2=&apos;http://swaref.samples.jaxws.ws.test.jboss.org/&apos;&gt;
-							  &lt;arg0&gt;cid:0-1180017772935-32455963 at ws.jboss.org&lt;/arg0&gt;
-							  &lt;arg1&gt;Wrapped test&lt;/arg1&gt;
-							  &lt;/ns2:parameterAnnotation&gt;
-							  &lt;/env:Body&gt;
-							  &lt;/env:Envelope&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
+&lt;env:Header/&gt;
+&lt;env:Body&gt;
+&lt;ns2:parameterAnnotation xmlns:ns2=&apos;http://swaref.samples.jaxws.ws.test.jboss.org/&apos;&gt;
+&lt;arg0&gt;cid:0-1180017772935-32455963 at ws.jboss.org&lt;/arg0&gt;
+&lt;arg1&gt;Wrapped test&lt;/arg1&gt;
+&lt;/ns2:parameterAnnotation&gt;
+&lt;/env:Body&gt;
+&lt;/env:Envelope&gt;
+]]> </programlisting>
 			</section>
 			<section>
 				<title>Starting from WSDL</title>
 				<para>If you chose the contract first approach then you need to ensure that any element declaration that should use SwaRef encoding simply refers to wsi:swaRef schema type:</para>
-				<programlisting> <![CDATA[
-							  &lt;element name=&quot;data&quot; type=&quot;wsi:swaRef&quot; 
-							  xmlns:wsi=&quot;http://ws-i.org/profiles/basic/1.1/xsd&quot;/&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;element name=&quot;data&quot; type=&quot;wsi:swaRef&quot; 
+xmlns:wsi=&quot;http://ws-i.org/profiles/basic/1.1/xsd&quot;/&gt;
+]]> </programlisting>
 				<para>Any wsi:swaRef schema type would then be mapped to DataHandler.</para>
 			</section>
 		</section>
@@ -1039,46 +1038,46 @@
 			<title>Bottom-Up (Using wsprovide)</title>
 			<para>The bottom-up strategy involves developing the Java code for your service, and then annotating it using JAX-WS annotations. These annotations can be used to customize the contract that is generated for your service. For example, you can change the operation name to map to anything you like. However, all of the annotations have sensible defaults, so only the @WebService annotation is required.</para>
 			<para>This can be as simple as creating a single class:</para>
-			<programlisting> <![CDATA[
-						  package echo;
-						  
-						  @javax.jws.WebService
-						  public class Echo
-						  {
-						  public String echo(String input)
-						  {
-						  return input;
-						  }
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+package echo;
+  
+ at javax.jws.WebService
+public class Echo
+{
+public String echo(String input)
+{
+return input;
+}
+}
+]]> </programlisting>
 			<para>A JSE or EJB3 deployment can be built using this class, and it is the only Java code needed to deploy on JBossWS. The WSDL, and all other Java artifacts called &quot;wrapper classes&quot; will be generated for you at deploy time. This actually goes beyond the JAX-WS specification, which requires that wrapper classes be generated using an offline tool. The reason for this requirement is purely a vender implementation problem, and since we do not believe in burdening a developer with a bunch of additional steps, we generate these as well. However, if you want your deployment to be portable to other application servers, you will unfortunately need to use a tool and add the generated classes to your deployment.</para>
 			<para>This is the primary purpose of the <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=Wsprovide">wsprovide</ulink> tool, to generate portable JAX-WS artifacts. Additionally, it can be used to &quot;provide&quot; the abstract contract (WSDL file) for your service. This can be obtained by invoking <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=Wsprovide">wsprovide</ulink> using the &quot;-w&quot; option:</para>
-			<programlisting> <![CDATA[
-						  $ javac -d . -classpath jboss-jaxws.jar Echo.java
-						  $ wsprovide -w echo.Echo
-						  Generating WSDL:
-						  EchoService.wsdl
-						  Writing Classes:
-						  echo/jaxws/Echo.class
-						  echo/jaxws/EchoResponse.class
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+$ javac -d . -classpath jboss-jaxws.jar Echo.java
+$ wsprovide -w echo.Echo
+Generating WSDL:
+EchoService.wsdl
+Writing Classes:
+echo/jaxws/Echo.class
+echo/jaxws/EchoResponse.class
+]]> </programlisting>
 			<para>Inspecting the WSDL reveals a service called EchoService:</para>
-			<programlisting> <![CDATA[
-						  &lt;service name=&apos;EchoService&apos;&gt;
-						  &lt;port binding=&apos;tns:EchoBinding&apos; name=&apos;EchoPort&apos;&gt;
-						  &lt;soap:address location=&apos;REPLACE_WITH_ACTUAL_URL&apos;/&gt;
-						  &lt;/port&gt;
-						  &lt;/service&gt;
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;service name=&apos;EchoService&apos;&gt;
+&lt;port binding=&apos;tns:EchoBinding&apos; name=&apos;EchoPort&apos;&gt;
+&lt;soap:address location=&apos;REPLACE_WITH_ACTUAL_URL&apos;/&gt;
+&lt;/port&gt;
+&lt;/service&gt;
+]]> </programlisting>
 			<para>As expected, this service defines one operation, &quot;echo&quot;:</para>
-			<programlisting> <![CDATA[
-						  &lt;portType name=&apos;Echo&apos;&gt;
-						  &lt;operation name=&apos;echo&apos; parameterOrder=&apos;echo&apos;&gt;
-						  &lt;input message=&apos;tns:Echo_echo&apos;/&gt;
-						  &lt;output message=&apos;tns:Echo_echoResponse&apos;/&gt;
-						  &lt;/operation&gt;
-						  &lt;/portType&gt;
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;portType name=&apos;Echo&apos;&gt;
+&lt;operation name=&apos;echo&apos; parameterOrder=&apos;echo&apos;&gt;
+&lt;input message=&apos;tns:Echo_echo&apos;/&gt;
+&lt;output message=&apos;tns:Echo_echoResponse&apos;/&gt;
+&lt;/operation&gt;
+&lt;/portType&gt;
+]]> </programlisting>
 			<para>
 				<note><title>Note</title>
 				<para>Remember that <emphasis role="bold">when deploying on JBossWS you do not need to run this tool.</emphasis> You only need it for generating portable artifacts and/or the abstract contract for your service.</para>
@@ -1086,40 +1085,40 @@
 			</para>
 			
 			<para>Let&apos;s create a POJO endpoint for deployment on JBoss AS. A simple web.xml needs to be created:</para>
-			<programlisting> <![CDATA[
-						  &lt;web-app xmlns=&quot;http://java.sun.com/xml/ns/j2ee&quot;
-						  xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
-						  xsi:schemaLocation=&quot;http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd&quot;
-						  version=&quot;2.4&quot;&gt;
-						  
-						  &lt;servlet&gt;
-						  &lt;servlet-name&gt;Echo&lt;/servlet-name&gt;
-						  &lt;servlet-class&gt;echo.Echo&lt;/servlet-class&gt;
-						  &lt;/servlet&gt;
-						  
-						  &lt;servlet-mapping&gt;
-						  &lt;servlet-name&gt;Echo&lt;/servlet-name&gt;
-						  &lt;url-pattern&gt;/Echo&lt;/url-pattern&gt;
-						  &lt;/servlet-mapping&gt;
-						  &lt;/web-app&gt;
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;web-app xmlns=&quot;http://java.sun.com/xml/ns/j2ee&quot;
+xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
+xsi:schemaLocation=&quot;http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd&quot;
+version=&quot;2.4&quot;&gt;
+  
+&lt;servlet&gt;
+&lt;servlet-name&gt;Echo&lt;/servlet-name&gt;
+&lt;servlet-class&gt;echo.Echo&lt;/servlet-class&gt;
+&lt;/servlet&gt;
+  
+&lt;servlet-mapping&gt;
+&lt;servlet-name&gt;Echo&lt;/servlet-name&gt;
+&lt;url-pattern&gt;/Echo&lt;/url-pattern&gt;
+&lt;/servlet-mapping&gt;
+&lt;/web-app&gt;
+]]> </programlisting>
 			<para>The web.xml and the single class can now be used to create a war:</para>
-			<programlisting> <![CDATA[
-						  $ mkdir -p WEB-INF/classes
-						  $ cp -rp echo WEB-INF/classes/
-						  $ cp web.xml WEB-INF
-						  $ jar cvf echo.war WEB-INF
-						  added manifest
-						  adding: WEB-INF/(in = 0) (out= 0)(stored 0%)
-						  adding: WEB-INF/classes/(in = 0) (out= 0)(stored 0%)
-						  adding: WEB-INF/classes/echo/(in = 0) (out= 0)(stored 0%)
-						  adding: WEB-INF/classes/echo/Echo.class(in = 340) (out= 247)(deflated 27%)
-						  adding: WEB-INF/web.xml(in = 576) (out= 271)(deflated 52%)
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+$ mkdir -p WEB-INF/classes
+$ cp -rp echo WEB-INF/classes/
+$ cp web.xml WEB-INF
+$ jar cvf echo.war WEB-INF
+added manifest
+adding: WEB-INF/(in = 0) (out= 0)(stored 0%)
+adding: WEB-INF/classes/(in = 0) (out= 0)(stored 0%)
+adding: WEB-INF/classes/echo/(in = 0) (out= 0)(stored 0%)
+adding: WEB-INF/classes/echo/Echo.class(in = 340) (out= 247)(deflated 27%)
+adding: WEB-INF/web.xml(in = 576) (out= 271)(deflated 52%)
+]]> </programlisting>
 			<para>The war can then be deployed:</para>
-			<programlisting> <![CDATA[
-						  cp echo.war /usr/local/jboss-4.2.0.GA-ejb3/server/default/deploy
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+ cp echo.war /usr/local/jboss-4.2.0.GA-ejb3/server/default/deploy
+]]> </programlisting>
 			<para>This will internally invoke <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=Wsprovide">wsprovide</ulink>, which will generate the WSDL. If deployment was successful, and you are using the default settings, it should be available here: <ulink url="http://localhost:8080/echo/Echo?wsdl">http://localhost:8080/echo/Echo?wsdl</ulink></para>
 			<para>For a portable JAX-WS deployment, the wrapper classes generated earlier could be added to the deployment.</para>
 		</section>
@@ -1127,26 +1126,27 @@
 			<title>Top-Down (Using wsconsume)</title>
 			<para>The top-down development strategy begins with the abstract contract for the service, which includes the WSDL file and zero or more schema files. The <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=Wsconsume">wsconsume</ulink> tool is then used to consume this contract, and produce annotated Java classes (and optionally sources) that define it.</para>
 			<para>
-				<emphasis role="bold">Note</emphasis>
-			</para>
-			<para>wsconsume seems to have a problem with symlinks on unix systems</para>
+		<note><title>Note</title>
+		<para>wsconsume seems to have a problem with symlinks on unix systems</para>
+		</note>
+		</para>
 			<para>Using the WSDL file from the bottom-up example, a new Java implementation that adheres to this service can be generated. The &quot;-k&quot; option is passed to <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=Wsconsume">wsconsume</ulink> to preserve the Java source files that are generated, instead of providing just classes:</para>
-			<programlisting> <![CDATA[
-						  
-						  $ wsconsume -k EchoService.wsdl
-						  echo/Echo.java
-						  echo/EchoResponse.java
-						  echo/EchoService.java
-						  echo/Echo_Type.java
-						  echo/ObjectFactory.java
-						  echo/package-info.java
-						  echo/Echo.java
-						  echo/EchoResponse.java
-						  echo/EchoService.java
-						  echo/Echo_Type.java
-						  echo/ObjectFactory.java
-						  echo/package-info.java
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+  
+$ wsconsume -k EchoService.wsdl
+echo/Echo.java
+echo/EchoResponse.java
+echo/EchoService.java
+echo/Echo_Type.java
+echo/ObjectFactory.java
+echo/package-info.java
+echo/Echo.java
+echo/EchoResponse.java
+echo/EchoService.java
+echo/Echo_Type.java
+echo/ObjectFactory.java
+echo/package-info.java
+]]> </programlisting>
 			<para>The following table shows the purpose of each generated file:</para>
 			<informaltable frame="all">
 				<tgroup cols="2">
@@ -1217,32 +1217,32 @@
 				</tgroup>
 			</informaltable>
 			<para>Examining the Service Endpoint Interface reveals annotations that are more explicit than in the class written by hand in the bottom-up example, however, these evaluate to the same contract:</para>
-			<programlisting> <![CDATA[
-						  @WebService(name = &quot;Echo&quot;, targetNamespace = &quot;http://echo/&quot;)
-						  public interface Echo {
-						  @WebMethod
-						  @WebResult(targetNamespace = &quot;&quot;)
-						  @RequestWrapper(localName = &quot;echo&quot;, targetNamespace = &quot;http://echo/&quot;, className = &quot;echo.Echo_Type&quot;)
-						  @ResponseWrapper(localName = &quot;echoResponse&quot;, targetNamespace = &quot;http://echo/&quot;, className = &quot;echo.EchoResponse&quot;)
-						  public String echo(
-						  @WebParam(name = &quot;arg0&quot;, targetNamespace = &quot;&quot;)
-						  String arg0);
-						  
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebService(name = &quot;Echo&quot;, targetNamespace = &quot;http://echo/&quot;)
+public interface Echo {
+ at WebMethod
+ at WebResult(targetNamespace = &quot;&quot;)
+ at RequestWrapper(localName = &quot;echo&quot;, targetNamespace = &quot;http://echo/&quot;, className = &quot;echo.Echo_Type&quot;)
+ at ResponseWrapper(localName = &quot;echoResponse&quot;, targetNamespace = &quot;http://echo/&quot;, className = &quot;echo.EchoResponse&quot;)
+public String echo(
+ at WebParam(name = &quot;arg0&quot;, targetNamespace = &quot;&quot;)
+String arg0);
+  
+}
+]]> </programlisting>
 			<para>The only missing piece (besides the packaging) is the implementation class, which can now be written, using the above interface.</para>
-			<programlisting> <![CDATA[
-						  package echo;
-						  
-						  @javax.jws.WebService(endpointInterface=&quot;echo.Echo&quot;)
-						  public class EchoImpl implements Echo
-						  {
-						  public String echo(String arg0)
-						  {
-						  return arg0;
-						  }
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+package echo;
+  
+ at javax.jws.WebService(endpointInterface=&quot;echo.Echo&quot;)
+public class EchoImpl implements Echo
+{
+public String echo(String arg0)
+{
+return arg0;
+}
+}
+]]> </programlisting>
 		</section>
 		<section>
 			<title>Client Side</title>
@@ -1255,68 +1255,68 @@
 				, even if the client is running on the same server.</para>
 			<para>Let&apos;s repeat the process of the top-down section, although using the deployed WSDL, instead of the one generated offline by <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=Wsprovide">wsprovide</ulink>. The reason why we do this is just to get the right value for soap:address. This value must be computed at deploy time, since it is based on container configuration specifics. You could of course edit the WSDL file yourself, although you need to ensure that the path is correct.</para>
 			<para>Offline version:</para>
-			<programlisting> <![CDATA[
-						  &lt;service name=&apos;EchoService&apos;&gt;
-						  &lt;port binding=&apos;tns:EchoBinding&apos; name=&apos;EchoPort&apos;&gt;
-						  &lt;soap:address location=&apos;REPLACE_WITH_ACTUAL_URL&apos;/&gt;
-						  &lt;/port&gt;
-						  &lt;/service&gt;
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;service name=&apos;EchoService&apos;&gt;
+&lt;port binding=&apos;tns:EchoBinding&apos; name=&apos;EchoPort&apos;&gt;
+&lt;soap:address location=&apos;REPLACE_WITH_ACTUAL_URL&apos;/&gt;
+&lt;/port&gt;
+&lt;/service&gt;
+]]> </programlisting>
 			<para>Online version:</para>
-			<programlisting> <![CDATA[
-						  &lt;service name=&quot;EchoService&quot;&gt;
-						  &lt;port binding=&quot;tns:EchoBinding&quot; name=&quot;EchoPort&quot;&gt;
-						  &lt;soap:address location=&quot;http://localhost.localdomain:8080/echo/Echo&quot;/&gt;
-						  &lt;/port&gt;
-						  &lt;/service&gt;
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;service name=&quot;EchoService&quot;&gt;
+&lt;port binding=&quot;tns:EchoBinding&quot; name=&quot;EchoPort&quot;&gt;
+&lt;soap:address location=&quot;http://localhost.localdomain:8080/echo/Echo&quot;/&gt;
+&lt;/port&gt;
+&lt;/service&gt;
+]]> </programlisting>
 			<para>Using the online deployed version with <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=Wsconsume">wsconsume</ulink>:</para>
-			<programlisting> <![CDATA[
-						  $ wsconsume -k http://localhost:8080/echo/Echo?wsdl
-						  echo/Echo.java
-						  echo/EchoResponse.java
-						  echo/EchoService.java
-						  echo/Echo_Type.java
-						  echo/ObjectFactory.java
-						  echo/package-info.java
-						  echo/Echo.java
-						  echo/EchoResponse.java
-						  echo/EchoService.java
-						  echo/Echo_Type.java
-						  echo/ObjectFactory.java
-						  echo/package-info.java
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+$ wsconsume -k http://localhost:8080/echo/Echo?wsdl
+echo/Echo.java
+echo/EchoResponse.java
+echo/EchoService.java
+echo/Echo_Type.java
+echo/ObjectFactory.java
+echo/package-info.java
+echo/Echo.java
+echo/EchoResponse.java
+echo/EchoService.java
+echo/Echo_Type.java
+echo/ObjectFactory.java
+echo/package-info.java
+]]> </programlisting>
 			<para> The one class that was not examined in the top-down section, was EchoService.java. Notice how it stores the location the WSDL was obtained from.</para>
-			<programlisting> <![CDATA[
-						  @WebServiceClient(name = &quot;EchoService&quot;, targetNamespace = &quot;http://echo/&quot;, wsdlLocation = &quot;http://localhost:8080/echo/Echo?wsdl&quot;)
-						  public class EchoService extends Service
-						  {
-						  private final static URL ECHOSERVICE_WSDL_LOCATION;
-						  
-						  static {
-						  URL url = null;
-						  try {
-						  url = new URL(&quot;http://localhost:8080/echo/Echo?wsdl&quot;);
-						  } catch (MalformedURLException e) {
-						  e.printStackTrace();
-						  }
-						  ECHOSERVICE_WSDL_LOCATION = url;
-						  }
-						  
-						  public EchoService(URL wsdlLocation, QName serviceName) {
-						  super(wsdlLocation, serviceName);
-						  }
-						  
-						  public EchoService() {
-						  super(ECHOSERVICE_WSDL_LOCATION, new QName(&quot;http://echo/&quot;, &quot;EchoService&quot;));
-						  }
-						  
-						  @WebEndpoint(name = &quot;EchoPort&quot;)
-						  public Echo getEchoPort() {
-						  return (Echo)super.getPort(new QName(&quot;http://echo/&quot;, &quot;EchoPort&quot;), Echo.class);
-						  }
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebServiceClient(name = &quot;EchoService&quot;, targetNamespace = &quot;http://echo/&quot;, wsdlLocation = &quot;http://localhost:8080/echo/Echo?wsdl&quot;)
+public class EchoService extends Service
+{
+private final static URL ECHOSERVICE_WSDL_LOCATION;
+  
+static {
+URL url = null;
+try {
+url = new URL(&quot;http://localhost:8080/echo/Echo?wsdl&quot;);
+} catch (MalformedURLException e) {
+e.printStackTrace();
+}
+ECHOSERVICE_WSDL_LOCATION = url;
+}
+  
+public EchoService(URL wsdlLocation, QName serviceName) {
+super(wsdlLocation, serviceName);
+}
+  
+public EchoService() {
+super(ECHOSERVICE_WSDL_LOCATION, new QName(&quot;http://echo/&quot;, &quot;EchoService&quot;));
+}
+  
+ at WebEndpoint(name = &quot;EchoPort&quot;)
+public Echo getEchoPort() {
+return (Echo)super.getPort(new QName(&quot;http://echo/&quot;, &quot;EchoPort&quot;), Echo.class);
+}
+}
+]]> </programlisting>
 			<para>As you can see, this generated class extends the main client entry point in JAX-WS, javax.xml.ws.Service. While you can use Service directly, this is far simpler since it provides the configuration info for you. The only method we really care about is the getEchoPort() method, which returns an instance of our Service Endpoint Interface. Any WS operation can then be called by just invoking a method on the returned interface.</para>
 			
 			<para>
@@ -1326,44 +1326,44 @@
 			</para>
 			
 			<para>All that is left to do, is write and compile the client:</para>
-			<programlisting> <![CDATA[
-						  import echo.*;
-						  
-						  public class EchoClient
-						  {
-						  public static void main(String args[])
-						  {
-						  if (args.length != 1)
-						  {
-						  System.err.println(&quot;usage: EchoClient &lt;message&gt;&quot;);
-						  System.exit(1);
-						  }
-						  
-						  EchoService service = new EchoService();
-						  Echo echo = service.getEchoPort();
-						  System.out.println(&quot;Server said: &quot; + echo.echo(args[0]));
-						  } 
-						  }
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+import echo.*;
+..
+public class EchoClient
+{
+public static void main(String args[])
+{
+if (args.length != 1)
+{
+System.err.println(&quot;usage: EchoClient &lt;message&gt;&quot;);
+System.exit(1);
+}
+  
+EchoService service = new EchoService();
+Echo echo = service.getEchoPort();
+System.out.println(&quot;Server said: &quot; + echo.echo(args[0]));
+} 
+}
+]]> </programlisting>
 			<para>It can then be easily executed using the <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=Wsrunclient">wsrunclient</ulink> tool. This is just a convenience tool that invokes java with the needed classpath:</para>
-			<programlisting> <![CDATA[
-						  $ wsrunclient EchoClient &apos;Hello World!&apos;
-						  Server said: Hello World!
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+$ wsrunclient EchoClient &apos;Hello World!&apos;
+Server said: Hello World!
+]]> </programlisting>
 			<para>It is easy to change the endpoint address of your operation at runtime, setting the ENDPOINT_ADDRESS_PROPERTY as shown below:</para>
-			<programlisting> <![CDATA[
-						  ...
-						  EchoService service = new EchoService();
-						  Echo echo = service.getEchoPort();
-						  
-						  /* Set NEW Endpoint Location */
-						  String endpointURL = &quot;http://NEW_ENDPOINT_URL&quot;;
-						  BindingProvider bp = (BindingProvider)echo;
-						  bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, endpointURL);
-						  
-						  System.out.println(&quot;Server said: &quot; + echo.echo(args[0]));
-						  ...
-						  ]]> </programlisting>
+<programlisting> <![CDATA[
+...
+EchoService service = new EchoService();
+Echo echo = service.getEchoPort();
+  
+/* Set NEW Endpoint Location */
+String endpointURL = &quot;http://NEW_ENDPOINT_URL&quot;;
+BindingProvider bp = (BindingProvider)echo;
+bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, endpointURL);
+  
+System.out.println(&quot;Server said: &quot; + echo.echo(args[0]));
+...
+]]> </programlisting>
 		</section>
 		<section>
 			<title>Command-line &amp; Ant Task Reference</title>
@@ -1429,143 +1429,144 @@
 			<section>
 				<title>Addressing Endpoint</title>
 				<para>The following endpoint implementation has a set of operation for a typical stateful shopping chart application.</para>
-				<programlisting> <![CDATA[
-							  @WebService(name = &quot;StatefulEndpoint&quot;, targetNamespace = &quot;http://org.jboss.ws/samples/wsaddressing&quot;, serviceName = &quot;TestService&quot;)
-							  @EndpointConfig(configName = &quot;Standard WSAddressing Endpoint&quot;)
-							  @HandlerChain(file = &quot;WEB-INF/jaxws-handlers.xml&quot;)
-							  @SOAPBinding(style = SOAPBinding.Style.RPC)
-							  public class StatefulEndpointImpl implements StatefulEndpoint, ServiceLifecycle
-							  {
-							  @WebMethod
-							  public void addItem(String item)
-							  { ... }
-							  
-							  @WebMethod
-							  public void checkout()
-							  { ... }
-							  
-							  @WebMethod
-							  public String getItems()
-							  { ... }
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebService(name = &quot;StatefulEndpoint&quot;, targetNamespace = &quot;http://org.jboss.ws/samples/wsaddressing&quot;, serviceName = &quot;TestService&quot;)
+ at EndpointConfig(configName = &quot;Standard WSAddressing Endpoint&quot;)
+ at HandlerChain(file = &quot;WEB-INF/jaxws-handlers.xml&quot;)
+ at SOAPBinding(style = SOAPBinding.Style.RPC)
+public class StatefulEndpointImpl implements StatefulEndpoint, ServiceLifecycle
+{
+ at WebMethod
+public void addItem(String item)
+{ ... }
+  
+ at WebMethod
+public void checkout()
+{ ... }
+  
+ at WebMethod
+public String getItems()
+{ ... }
+}
+]]> </programlisting>
 				<para>It uses the <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=JAX-WS_Endpoint_Configuration#_Standard_WSAddressing_Endpoint">JAX-WS Endpoint Configuration# Standard WSAddressing Endpoint</ulink> to enable the server side addressing handler. It processes the incomming WS-Addressing header elements and provides access to them through the JSR-261 API.</para>
 				<para>The endpoint handler chain</para>
-				<programlisting> <![CDATA[
-							  &lt;handler-chains xmlns=&quot;http://java.sun.com/xml/ns/javaee&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
-							  xsi:schemaLocation=&quot;http://java.sun.com/xml/ns/javaee javaee_web_services_1_2.xsd&quot;&gt;
-							  
-							  &lt;handler-chain&gt;
-							  &lt;protocol-bindings&gt;##SOAP11_HTTP&lt;/protocol-bindings&gt;
-							  &lt;handler&gt;
-							  &lt;handler-name&gt;Application Server Handler&lt;/handler-name&gt;
-							  &lt;handler-class&gt;org.jboss.test.ws.jaxws.samples.wsaddressing.ServerHandler&lt;/handler-class&gt;
-							  &lt;/handler&gt;
-							  &lt;/handler-chain&gt;
-							  
-							  &lt;/handler-chains&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;handler-chains xmlns=&quot;http://java.sun.com/xml/ns/javaee&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
+xsi:schemaLocation=&quot;http://java.sun.com/xml/ns/javaee javaee_web_services_1_2.xsd&quot;&gt;
+  
+&lt;handler-chain&gt;
+&lt;protocol-bindings&gt;##SOAP11_HTTP&lt;/protocol-bindings&gt;
+&lt;handler&gt;
+&lt;handler-name&gt;Application Server Handler&lt;/handler-name&gt;
+&lt;handler-class&gt;org.jboss.test.ws.jaxws.samples.wsaddressing.ServerHandler&lt;/handler-class&gt;
+&lt;/handler&gt;
+&lt;/handler-chain&gt;
+  
+&lt;/handler-chains&gt;
+]]> </programlisting>
 				<para>defines an application specific hander that assignes/processes stateful client ids.</para>
 			</section>
 			<section>
 				<title>Addressing Client</title>
 				<para>On the client side there are simmilar handlers that does the reverse. It uses the JSR-261 API to add WS-Addressing header elements including the clientid association.</para>
 				<para> The client sets a custom handler chain in the binding</para>
-				<programlisting> <![CDATA[
-							  Service service = Service.create(wsdlURL, serviceName);
-							  port1 = (StatefulEndpoint)service.getPort(StatefulEndpoint.class);
-							  BindingProvider bindingProvider = (BindingProvider)port1;
-							  
-							  List&lt;Handler&gt; customHandlerChain = new ArrayList&lt;Handler&gt;();
-							  customHandlerChain.add(new ClientHandler());
-							  customHandlerChain.add(new WSAddressingClientHandler());
-							  bindingProvider.getBinding().setHandlerChain(customHandlerChain);
-							  ]]> </programlisting>
-				<para>The WSAddressingClientHandler is provided by JBossWS and reads/writes the addressing properties and puts then into the message context.</para>
+<programlisting> <![CDATA[
+Service service = Service.create(wsdlURL, serviceName);
+port1 = (StatefulEndpoint)service.getPort(StatefulEndpoint.class);
+BindingProvider bindingProvider = (BindingProvider)port1;
+  
+List&lt;Handler&gt; customHandlerChain = new ArrayList&lt;Handler&gt;();
+customHandlerChain.add(new ClientHandler());
+customHandlerChain.add(new WSAddressingClientHandler());
+bindingProvider.getBinding().setHandlerChain(customHandlerChain);
+]]> </programlisting>
+
+<para>The WSAddressingClientHandler is provided by JBossWS and reads/writes the addressing properties and puts then into the message context.</para>
 				<para>
 					<emphasis role="bold">A client connecting to the stateful endpoint</emphasis>
 				</para>
-				<programlisting> <![CDATA[
-							  public class AddressingStatefulTestCase extends JBossWSTest
-							  {
-							  public void testAddItem() throws Exception
-							  {
-							  port1.addItem(&quot;Ice Cream&quot;);
-							  port1.addItem(&quot;Ferrari&quot;);
-							  
-							  port2.addItem(&quot;Mars Bar&quot;);
-							  port2.addItem(&quot;Porsche&quot;);
-							  }
-							  
-							  public void testGetItems() throws Exception
-							  {
-							  String items1 = port1.getItems();
-							  assertEquals(&quot;[Ice Cream, Ferrari]&quot;, items1);
-							  
-							  String items2 = port2.getItems();
-							  assertEquals(&quot;[Mars Bar, Porsche]&quot;, items2);
-							  }
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+public class AddressingStatefulTestCase extends JBossWSTest
+{
+public void testAddItem() throws Exception
+{
+port1.addItem(&quot;Ice Cream&quot;);
+port1.addItem(&quot;Ferrari&quot;);
+  
+port2.addItem(&quot;Mars Bar&quot;);
+port2.addItem(&quot;Porsche&quot;);
+}
+  
+public void testGetItems() throws Exception
+{
+String items1 = port1.getItems();
+assertEquals(&quot;[Ice Cream, Ferrari]&quot;, items1);
+  
+String items2 = port2.getItems();
+assertEquals(&quot;[Mars Bar, Porsche]&quot;, items2);
+}
+}
+]]> </programlisting>
 				<para>
 					<emphasis role="bold">SOAP message exchange</emphasis>
 				</para>
 				<para>Below you see the SOAP messages that are beeing exchanged.</para>
-				<programlisting> <![CDATA[
-							  &lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
-							  &lt;env:Header xmlns:wsa=&apos;http://schemas.xmlsoap.org/ws/2004/08/addressing&apos;&gt;
-							  &lt;wsa:To&gt;uri:jbossws-samples-wsaddr/TestService&lt;/wsa:To&gt;
-							  &lt;wsa:Action&gt;http://org.jboss.ws/addressing/stateful/action&lt;/wsa:Action&gt;
-							  &lt;wsa:ReferenceParameters&gt;
-							  &lt;ns1:clientid xmlns:ns1=&apos;http://somens&apos;&gt;clientid-1&lt;/ns1:clientid&gt;
-							  &lt;/wsa:ReferenceParameters&gt;
-							  &lt;/env:Header&gt;
-							  &lt;env:Body&gt;
-							  &lt;ns1:addItem xmlns:ns1=&apos;http://org.jboss.ws/samples/wsaddr&apos;&gt;
-							  &lt;String_1&gt;Ice Cream&lt;/String_1&gt;
-							  &lt;/ns1:addItem&gt;
-							  &lt;/env:Body&gt;
-							  &lt;/env:Envelope&gt;
-							  
-							  &lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
-							  &lt;env:Header xmlns:wsa=&apos;http://schemas.xmlsoap.org/ws/2004/08/addressing&apos;&gt;
-							  &lt;wsa:To&gt;http://www.w3.org/2005/08/addressing/anonymous&lt;/wsa:To&gt;
-							  &lt;wsa:Action&gt;http://org.jboss.ws/addressing/stateful/actionReply&lt;/wsa:Action&gt;
-							  &lt;ns1:clientid xmlns:ns1=&apos;http://somens&apos;&gt;clientid-1&lt;/ns1:clientid&gt;
-							  &lt;/env:Header&gt;
-							  &lt;env:Body&gt;
-							  &lt;ns1:addItemResponse xmlns:ns1=&apos;http://org.jboss.ws/samples/wsaddr&apos;/&gt;
-							  &lt;/env:Body&gt;
-							  &lt;/env:Envelope&gt;
-							  
-							  ...
-							  
-							  &lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
-							  &lt;env:Header xmlns:wsa=&apos;http://schemas.xmlsoap.org/ws/2004/08/addressing&apos;&gt;
-							  &lt;wsa:To&gt;uri:jbossws-samples-wsaddr/TestService&lt;/wsa:To&gt;
-							  &lt;wsa:Action&gt;http://org.jboss.ws/addressing/stateful/action&lt;/wsa:Action&gt;
-							  &lt;wsa:ReferenceParameters&gt;
-							  &lt;ns1:clientid xmlns:ns1=&apos;http://somens&apos;&gt;clientid-1&lt;/ns1:clientid&gt;
-							  &lt;/wsa:ReferenceParameters&gt;
-							  &lt;/env:Header&gt;
-							  &lt;env:Body&gt;
-							  &lt;ns1:getItems xmlns:ns1=&apos;http://org.jboss.ws/samples/wsaddr&apos;/&gt;
-							  &lt;/env:Body&gt;
-							  &lt;/env:Envelope&gt;
-							  
-							  &lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
-							  &lt;env:Header xmlns:wsa=&apos;http://schemas.xmlsoap.org/ws/2004/08/addressing&apos;&gt;
-							  &lt;wsa:To&gt;http://www.w3.org/2005/08/addressing/anonymous&lt;/wsa:To&gt;
-							  &lt;wsa:Action&gt;http://org.jboss.ws/addressing/stateful/actionReply&lt;/wsa:Action&gt;
-							  &lt;ns1:clientid xmlns:ns1=&apos;http://somens&apos;&gt;clientid-1&lt;/ns1:clientid&gt;
-							  &lt;/env:Header&gt;
-							  &lt;env:Body&gt;
-							  &lt;ns1:getItemsResponse xmlns:ns1=&apos;http://org.jboss.ws/samples/wsaddr&apos;&gt;
-							  &lt;result&gt;[Ice Cream, Ferrari]&lt;/result&gt;
-							  &lt;/ns1:getItemsResponse&gt;
-							  &lt;/env:Body&gt;
-							  &lt;/env:Envelope&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
+&lt;env:Header xmlns:wsa=&apos;http://schemas.xmlsoap.org/ws/2004/08/addressing&apos;&gt;
+&lt;wsa:To&gt;uri:jbossws-samples-wsaddr/TestService&lt;/wsa:To&gt;
+&lt;wsa:Action&gt;http://org.jboss.ws/addressing/stateful/action&lt;/wsa:Action&gt;
+&lt;wsa:ReferenceParameters&gt;
+&lt;ns1:clientid xmlns:ns1=&apos;http://somens&apos;&gt;clientid-1&lt;/ns1:clientid&gt;
+&lt;/wsa:ReferenceParameters&gt;
+&lt;/env:Header&gt;
+&lt;env:Body&gt;
+&lt;ns1:addItem xmlns:ns1=&apos;http://org.jboss.ws/samples/wsaddr&apos;&gt;
+&lt;String_1&gt;Ice Cream&lt;/String_1&gt;
+&lt;/ns1:addItem&gt;
+&lt;/env:Body&gt;
+&lt;/env:Envelope&gt;
+  
+&lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
+&lt;env:Header xmlns:wsa=&apos;http://schemas.xmlsoap.org/ws/2004/08/addressing&apos;&gt;
+&lt;wsa:To&gt;http://www.w3.org/2005/08/addressing/anonymous&lt;/wsa:To&gt;
+&lt;wsa:Action&gt;http://org.jboss.ws/addressing/stateful/actionReply&lt;/wsa:Action&gt;
+&lt;ns1:clientid xmlns:ns1=&apos;http://somens&apos;&gt;clientid-1&lt;/ns1:clientid&gt;
+&lt;/env:Header&gt;
+&lt;env:Body&gt;
+&lt;ns1:addItemResponse xmlns:ns1=&apos;http://org.jboss.ws/samples/wsaddr&apos;/&gt;
+&lt;/env:Body&gt;
+&lt;/env:Envelope&gt;
+  
+...
+  
+&lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
+&lt;env:Header xmlns:wsa=&apos;http://schemas.xmlsoap.org/ws/2004/08/addressing&apos;&gt;
+&lt;wsa:To&gt;uri:jbossws-samples-wsaddr/TestService&lt;/wsa:To&gt;
+&lt;wsa:Action&gt;http://org.jboss.ws/addressing/stateful/action&lt;/wsa:Action&gt;
+&lt;wsa:ReferenceParameters&gt;
+&lt;ns1:clientid xmlns:ns1=&apos;http://somens&apos;&gt;clientid-1&lt;/ns1:clientid&gt;
+&lt;/wsa:ReferenceParameters&gt;
+&lt;/env:Header&gt;
+&lt;env:Body&gt;
+&lt;ns1:getItems xmlns:ns1=&apos;http://org.jboss.ws/samples/wsaddr&apos;/&gt;
+&lt;/env:Body&gt;
+&lt;/env:Envelope&gt;
+  
+&lt;env:Envelope xmlns:env=&apos;http://schemas.xmlsoap.org/soap/envelope/&apos;&gt;
+&lt;env:Header xmlns:wsa=&apos;http://schemas.xmlsoap.org/ws/2004/08/addressing&apos;&gt;
+&lt;wsa:To&gt;http://www.w3.org/2005/08/addressing/anonymous&lt;/wsa:To&gt;
+&lt;wsa:Action&gt;http://org.jboss.ws/addressing/stateful/actionReply&lt;/wsa:Action&gt;
+&lt;ns1:clientid xmlns:ns1=&apos;http://somens&apos;&gt;clientid-1&lt;/ns1:clientid&gt;
+&lt;/env:Header&gt;
+&lt;env:Body&gt;
+&lt;ns1:getItemsResponse xmlns:ns1=&apos;http://org.jboss.ws/samples/wsaddr&apos;&gt;
+&lt;result&gt;[Ice Cream, Ferrari]&lt;/result&gt;
+&lt;/ns1:getItemsResponse&gt;
+&lt;/env:Body&gt;
+&lt;/env:Envelope&gt;
+]]> </programlisting>
 			</section>
 		</section>
 		<section>
@@ -1638,37 +1639,37 @@
 			<section>
 				<title>Setup an event source endpoint</title>
 				<para>With JAX-WS the event source setup has actually become quiet easy. All you need to do is to subclass your endpoint implementation from <literal>AbstractEventSourceEndpoint</literal> and a subscription manager from <literal>AbstractSubscriptionManagerEndpoint</literal> and finally point that implementation to a <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=JAX-WS_User_Guide#The_WSDL_that_describes_an_event_source">event source specific WSDL</ulink>.</para>
-				<programlisting> <![CDATA[
-							  package org.jboss.test.ws.jaxws.samples.wseventing;
-							  
-							  import javax.jws.WebService;
-							  
-							  import org.jboss.logging.Logger;
-							  import org.jboss.ws.annotation.EndpointConfig;
-							  import org.jboss.ws.extensions.eventing.jaxws.AbstractEventSourceEndpoint;
-							  
-							  /**
-							  * @author Heiko.Braun at jboss.org
-							  * @version $Id$
-							  * @since 18.01.2007
-							  */
-							  @WebService(                                                                   (1)
-							  name = &quot;EventSource&quot;,
-							  portName = &quot;EventSourcePort&quot;,
-							  targetNamespace = &quot;http://schemas.xmlsoap.org/ws/2004/08/eventing&quot;,
-							  wsdlLocation = &quot;/WEB-INF/wsdl/sysmon.wsdl&quot;,                                 (2)
-							  endpointInterface = &quot;org.jboss.ws.extensions.eventing.jaxws.EventSourceEndpoint&quot;)
-							  @EndpointConfig(configName = &quot;Standard WSAddressing Endpoint&quot;)                 (3)
-							  public class SysmonRegistrationEndpoint extends AbstractEventSourceEndpoint {  (4)
-							  
-							  private static final Logger log = Logger.getLogger(SysmonRegistrationEndpoint.class);
-							  
-							  protected Logger getLogger()
-							  {
-							  return log;
-							  }
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+package org.jboss.test.ws.jaxws.samples.wseventing;
+..
+import javax.jws.WebService;
+
+import org.jboss.logging.Logger;
+import org.jboss.ws.annotation.EndpointConfig;
+import org.jboss.ws.extensions.eventing.jaxws.AbstractEventSourceEndpoint;
+  
+/**
+* @author Heiko.Braun at jboss.org
+* @version $Id$
+* @since 18.01.2007
+*/
+ at WebService(                                                                   (1)
+name = &quot;EventSource&quot;,
+portName = &quot;EventSourcePort&quot;,
+targetNamespace = &quot;http://schemas.xmlsoap.org/ws/2004/08/eventing&quot;,
+wsdlLocation = &quot;/WEB-INF/wsdl/sysmon.wsdl&quot;,                                 (2)
+endpointInterface = &quot;org.jboss.ws.extensions.eventing.jaxws.EventSourceEndpoint&quot;)
+ at EndpointConfig(configName = &quot;Standard WSAddressing Endpoint&quot;)                 (3)
+public class SysmonRegistrationEndpoint extends AbstractEventSourceEndpoint {  (4)
+  
+private static final Logger log = Logger.getLogger(SysmonRegistrationEndpoint.class);
+  
+protected Logger getLogger()
+{
+return log;
+}
+}
+]]> </programlisting>
 				<orderedlist>
 					<listitem>
 						<para> Of course we need a <literal>@WebService</literal> annotation</para>
@@ -1688,70 +1689,70 @@
 				<title>The WSDL that describes an event source</title>
 				<para>Even though we are already using the annotation driven approach, JBossWS eventing still requires an event source specific WSDL.</para>
 				<para>The following excerpt shows the relevant WSDL details that describe an event source.</para>
-				<programlisting> <![CDATA[
-							  &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
-							  
-							  &lt;wsdl:definitions
-							  targetNamespace=&quot;http://www.jboss.org/sysmon&quot;
-							  xmlns:tns=&quot;http://www.jboss.org/sysmon&quot;
-							  xmlns:wse=&apos;http://schemas.xmlsoap.org/ws/2004/08/eventing&apos;
-							  xmlns:wsdl=&apos;http://schemas.xmlsoap.org/wsdl/&apos;
-							  xmlns:wsa10=&apos;http://www.w3.org/2005/08/addressing&apos;
-							  xmlns:xs=&apos;http://www.w3.org/2001/XMLSchema&apos;
-							  xmlns:soap=&quot;http://schemas.xmlsoap.org/wsdl/soap/&quot;&gt;
-							  
-							  &lt;wsdl:import
-							  (1)        namespace=&apos;http://schemas.xmlsoap.org/ws/2004/08/eventing&apos;
-							  location=&apos;jbwse.wsdl&apos; /&gt;
-							  
-							  &lt;wsdl:types&gt;
-							  
-							  &lt;xs:schema targetNamespace=&apos;http://schemas.xmlsoap.org/ws/2004/08/eventing&apos;&gt;
-							  (2)      &lt;xs:include schemaLocation=&apos;jbwse.xsd&apos;/&gt;
-							  &lt;/xs:schema&gt;
-							  
-							  (3)   &lt;xs:schema
-							  targetNamespace=&quot;http://www.jboss.org/sysmon&quot;
-							  elementFormDefault=&quot;qualified&quot;
-							  blockDefault=&quot;#all&quot;&gt;
-							  &lt;xs:element name=&quot;SystemStatus&quot;&gt;
-							  &lt;xs:complexType&gt;
-							  &lt;xs:sequence&gt;
-							  &lt;xs:element name=&quot;Time &quot; type=&quot;xs:dateTime&quot;/&gt;
-							  &lt;xs:element name=&quot;HostName&quot; type=&quot;xs:string&quot;/&gt;
-							  &lt;xs:element name=&quot;HostAddress&quot; type=&quot;xs:string&quot;/&gt;
-							  &lt;xs:element name=&quot;ActiveThreadCount&quot; type=&quot;xs:int&quot;/&gt;
-							  &lt;xs:element name=&quot;FreeMemory&quot; type=&quot;xs:string&quot;/&gt;
-							  &lt;xs:element name=&quot;MaxMemory&quot; type=&quot;xs:string&quot;/&gt;
-							  &lt;/xs:sequence&gt;
-							  &lt;/xs:complexType&gt;
-							  &lt;/xs:element&gt;
-							  &lt;/xs:schema&gt;
-							  
-							  &lt;/wsdl:types&gt;
-							  
-							  &lt;wsdl:message name=&apos;SystemInfoMsg&apos;&gt;
-							  &lt;wsdl:part name=&apos;body&apos; element=&apos;tns:SystemStatus&apos;/&gt;
-							  &lt;/wsdl:message&gt;
-							  
-							  (4) &lt;wsdl:portType name=&apos;SystemInfo&apos; wse:EventSource=&apos;true&apos;&gt;
-							  &lt;wsdl:operation name=&apos;SysmonOp&apos;&gt;
-							  &lt;wsdl:output message=&apos;tns:SystemInfoMsg&apos;/&gt;
-							  &lt;/wsdl:operation&gt;
-							  &lt;/wsdl:portType&gt;
-							  
-							  &lt;wsdl:binding name=&quot;SystemInfoBinding&quot; type=&quot;tns:SystemInfo&quot;&gt;
-							  &lt;soap:binding style=&quot;document&quot; transport=&quot;http://schemas.xmlsoap.org/soap/http&quot;/&gt;
-							  &lt;wsdl:operation name=&quot;SysmonOp&quot;&gt;
-							  &lt;soap:operation soapAction=&quot;&quot;/&gt;
-							  &lt;wsdl:output&gt;
-							  &lt;soap:body use=&quot;literal&quot;/&gt;
-							  &lt;/wsdl:output&gt;
-							  &lt;/wsdl:operation&gt;
-							  &lt;/wsdl:binding&gt;
-							  
-							  &lt;/wsdl:definitions&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+  
+&lt;wsdl:definitions
+targetNamespace=&quot;http://www.jboss.org/sysmon&quot;
+xmlns:tns=&quot;http://www.jboss.org/sysmon&quot;
+xmlns:wse=&apos;http://schemas.xmlsoap.org/ws/2004/08/eventing&apos;
+xmlns:wsdl=&apos;http://schemas.xmlsoap.org/wsdl/&apos;
+xmlns:wsa10=&apos;http://www.w3.org/2005/08/addressing&apos;
+xmlns:xs=&apos;http://www.w3.org/2001/XMLSchema&apos;
+xmlns:soap=&quot;http://schemas.xmlsoap.org/wsdl/soap/&quot;&gt;
+  
+&lt;wsdl:import
+(1)        namespace=&apos;http://schemas.xmlsoap.org/ws/2004/08/eventing&apos;
+location=&apos;jbwse.wsdl&apos; /&gt;
+  
+&lt;wsdl:types&gt;
+  
+&lt;xs:schema targetNamespace=&apos;http://schemas.xmlsoap.org/ws/2004/08/eventing&apos;&gt;
+(2)      &lt;xs:include schemaLocation=&apos;jbwse.xsd&apos;/&gt;
+&lt;/xs:schema&gt;
+  
+(3)   &lt;xs:schema
+targetNamespace=&quot;http://www.jboss.org/sysmon&quot;
+elementFormDefault=&quot;qualified&quot;
+blockDefault=&quot;#all&quot;&gt;
+&lt;xs:element name=&quot;SystemStatus&quot;&gt;
+&lt;xs:complexType&gt;
+&lt;xs:sequence&gt;
+&lt;xs:element name=&quot;Time &quot; type=&quot;xs:dateTime&quot;/&gt;
+&lt;xs:element name=&quot;HostName&quot; type=&quot;xs:string&quot;/&gt;
+&lt;xs:element name=&quot;HostAddress&quot; type=&quot;xs:string&quot;/&gt;
+&lt;xs:element name=&quot;ActiveThreadCount&quot; type=&quot;xs:int&quot;/&gt;
+&lt;xs:element name=&quot;FreeMemory&quot; type=&quot;xs:string&quot;/&gt;
+&lt;xs:element name=&quot;MaxMemory&quot; type=&quot;xs:string&quot;/&gt;
+&lt;/xs:sequence&gt;
+&lt;/xs:complexType&gt;
+&lt;/xs:element&gt;
+&lt;/xs:schema&gt;
+  
+&lt;/wsdl:types&gt;
+  
+&lt;wsdl:message name=&apos;SystemInfoMsg&apos;&gt;
+&lt;wsdl:part name=&apos;body&apos; element=&apos;tns:SystemStatus&apos;/&gt;
+&lt;/wsdl:message&gt;
+  
+(4) &lt;wsdl:portType name=&apos;SystemInfo&apos; wse:EventSource=&apos;true&apos;&gt;
+&lt;wsdl:operation name=&apos;SysmonOp&apos;&gt;
+&lt;wsdl:output message=&apos;tns:SystemInfoMsg&apos;/&gt;
+&lt;/wsdl:operation&gt;
+&lt;/wsdl:portType&gt;
+  
+&lt;wsdl:binding name=&quot;SystemInfoBinding&quot; type=&quot;tns:SystemInfo&quot;&gt;
+&lt;soap:binding style=&quot;document&quot; transport=&quot;http://schemas.xmlsoap.org/soap/http&quot;/&gt;
+&lt;wsdl:operation name=&quot;SysmonOp&quot;&gt;
+&lt;soap:operation soapAction=&quot;&quot;/&gt;
+&lt;wsdl:output&gt;
+&lt;soap:body use=&quot;literal&quot;/&gt;
+&lt;/wsdl:output&gt;
+&lt;/wsdl:operation&gt;
+&lt;/wsdl:binding&gt;
+  
+&lt;/wsdl:definitions&gt;
+]]> </programlisting>
 				<orderedlist>
 					<listitem>
 						<para> Import the default eventing WSDL, that includes service and port declarations.</para>
@@ -1770,34 +1771,36 @@
 			<section>
 				<title>Emitting notifications</title>
 				<para>JBossWS-Eventing registeres a event dispatcher within local JNDI tree that can be used to emit notifications from applications.</para>
-				<programlisting> <![CDATA[
-							  java:/EventDispatcher
-							  ]]> </programlisting>
-				<para>The event dispatcher interface:</para>
-				<programlisting> <![CDATA[
-							  public interface EventDispatcher
-							  {
-							  void dispatch(URI eventSourceNS, Element payload);
-							  }
-							  ]]> </programlisting>
-				<para>
+<programlisting> <![CDATA[
+java:/EventDispatcher
+]]> </programlisting>
+
+<para>The event dispatcher interface:</para>
+<programlisting> <![CDATA[
+public interface EventDispatcher
+{
+void dispatch(URI eventSourceNS, Element payload);
+}
+]]> </programlisting>
+	
+<para>
 					<emphasis role="bold">Example notification</emphasis>
 				</para>
-				<programlisting> <![CDATA[
-							  (1)   URI eventSourceURI = new URI(&quot;http://http://www.jboss.org/sysmon/SystemInfo&quot;);
-							  (2)   Element payload = DOMUtils.parse(&quot;SOME XML STRING&quot;);
-							  try
-							  {
-							  InitialContext iniCtx = getInitialContext();
-							  (3)      EventDispatcher delegate = (EventDispatcher)
-							  iniCtx.lookup(EventingConstants.DISPATCHER_JNDI_NAME);
-							  (4)      delegate.dispatch(eventSourceURI, payload);
-							  }
-							  catch (Exception e)
-							  {
-							  //
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+(1)   URI eventSourceURI = new URI(&quot;http://http://www.jboss.org/sysmon/SystemInfo&quot;);
+(2)   Element payload = DOMUtils.parse(&quot;SOME XML STRING&quot;);
+try
+{
+InitialContext iniCtx = getInitialContext();
+(3)      EventDispatcher delegate = (EventDispatcher)
+iniCtx.lookup(EventingConstants.DISPATCHER_JNDI_NAME);
+(4)      delegate.dispatch(eventSourceURI, payload);
+}
+catch (Exception e)
+{
+//
+}
+]]> </programlisting>
 				<orderedlist>
 					<listitem>
 						<para> Address your event source correctly (TargetNamespace+PortTypeName)</para>
@@ -1813,9 +1816,9 @@
 					</listitem>
 				</orderedlist>
 				<para>The SubscriptionManager MBean is the actual core component that drives the JBossWS-Eventing implementation. It can be accessed through the jmx-console.</para>
-				<programlisting> <![CDATA[
-							  jboss.ws.eventing:service=SubscriptionManager
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+jboss.ws.eventing:service=SubscriptionManager
+]]> </programlisting>
 				<para>Management operations exist to monitor and maintain active subscritions and deployed event sources. The current implementation is backed by a ThreadPoolExecutor, that asynchronously delivers messages to event sink endpoints. It can be configured through the following attributes:</para>
 				<itemizedlist>
 					<listitem>
@@ -1882,23 +1885,23 @@
 			<section>
 				<title>Server side WSSE declaration (jboss-wsse-server.xml)</title>
 				<para>In this example we configure both the client and the server to sign the message body. Both also require this from each other. So, if you remove either the client or the server security deployment descriptor, you will notice that the other party will throw a fault explaining that the message did not conform to the proper security requirements.</para>
-				<programlisting> <![CDATA[
-							  &lt;jboss-ws-security xmlns=&quot;http://www.jboss.com/ws-security/config&quot; 
-							  xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
-							  xsi:schemaLocation=&quot;http://www.jboss.com/ws-security/config 
-							  http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd&quot;&gt;
-							  (1)  &lt;key-store-file&gt;WEB-INF/wsse.keystore&lt;/key-store-file&gt;
-							  (2)  &lt;key-store-password&gt;jbossws&lt;/key-store-password&gt;
-							  (3)  &lt;trust-store-file&gt;WEB-INF/wsse.truststore&lt;/trust-store-file&gt;
-							  (4)  &lt;trust-store-password&gt;jbossws&lt;/trust-store-password&gt;
-							  (5)  &lt;config&gt;
-							  (6)    &lt;sign type=&quot;x509v3&quot; alias=&quot;wsse&quot;/&gt;
-							  (7)    &lt;requires&gt;
-							  (8)      &lt;signature/&gt;
-							  &lt;/requires&gt;
-							  &lt;/config&gt;
-							  &lt;/jboss-ws-security&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;jboss-ws-security xmlns=&quot;http://www.jboss.com/ws-security/config&quot; 
+xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
+xsi:schemaLocation=&quot;http://www.jboss.com/ws-security/config 
+http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd&quot;&gt;
+(1)  &lt;key-store-file&gt;WEB-INF/wsse.keystore&lt;/key-store-file&gt;
+(2)  &lt;key-store-password&gt;jbossws&lt;/key-store-password&gt;
+(3)  &lt;trust-store-file&gt;WEB-INF/wsse.truststore&lt;/trust-store-file&gt;
+(4)  &lt;trust-store-password&gt;jbossws&lt;/trust-store-password&gt;
+(5)  &lt;config&gt;
+(6)    &lt;sign type=&quot;x509v3&quot; alias=&quot;wsse&quot;/&gt;
+(7)    &lt;requires&gt;
+(8)      &lt;signature/&gt;
+&lt;/requires&gt;
+&lt;/config&gt;
+&lt;/jboss-ws-security&gt;
+]]> </programlisting>
 				<orderedlist>
 					<listitem>
 						<para> This specifies that the key store we wish to use is WEB-INF/wsse.keystore, which is located in our war file.</para>
@@ -1926,30 +1929,30 @@
 					</listitem>
 				</orderedlist>
 				<para>By default an endpoint does not use the WS-Security configuration. Use the proprietary @EndpointConfig annotation to set the config name. See <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=JAX-WS_Endpoint_Configuration">JAX-WS_Endpoint_Configuration</ulink> for the list of available config names.</para>
-				<programlisting> <![CDATA[
-							  @WebService
-							  @EndpointConfig(configName = &quot;Standard WSSecurity Endpoint&quot;)
-							  public class HelloJavaBean
-							  {
-							  ...
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebService
+ at EndpointConfig(configName = &quot;Standard WSSecurity Endpoint&quot;)
+public class HelloJavaBean
+{
+...
+}
+]]> </programlisting>
 			</section>
 			<section>
 				<title>Client side WSSE declaration (jboss-wsse-client.xml)</title>
-				<programlisting> <![CDATA[
-							  &lt;jboss-ws-security xmlns=&quot;http://www.jboss.com/ws-security/config&quot; 
-							  xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
-							  xsi:schemaLocation=&quot;http://www.jboss.com/ws-security/config 
-							  http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd&quot;&gt;
-							  (1)  &lt;config&gt;
-							  (2)    &lt;sign type=&quot;x509v3&quot; alias=&quot;wsse&quot;/&gt;
-							  (3)    &lt;requires&gt;
-							  (4)      &lt;signature/&gt;
-							  &lt;/requires&gt;
-							  &lt;/config&gt;
-							  &lt;/jboss-ws-security&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;jboss-ws-security xmlns=&quot;http://www.jboss.com/ws-security/config&quot; 
+xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
+xsi:schemaLocation=&quot;http://www.jboss.com/ws-security/config 
+http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd&quot;&gt;
+(1)  &lt;config&gt;
+(2)    &lt;sign type=&quot;x509v3&quot; alias=&quot;wsse&quot;/&gt;
+(3)    &lt;requires&gt;
+(4)      &lt;signature/&gt;
+&lt;/requires&gt;
+&lt;/config&gt;
+&lt;/jboss-ws-security&gt;
+]]> </programlisting>
 				<orderedlist>
 					<listitem>
 						<para> Here we start our root config block. The root config block is the default configuration for all web service clients (Call, Proxy objects).</para>
@@ -1968,57 +1971,60 @@
 					<title>Client side key store configuration</title>
 					<para>We did not specify a key store or trust store, because client apps instead use the wsse System properties instead. If this was a web or ejb client (meaning a webservice client in a war or ejb jar file), then we would have specified them in the client descriptor.</para>
 					<para>Here is an excerpt from the JBossWS samples:</para>
-					<programlisting> <![CDATA[
-								  &lt;sysproperty key=&quot;org.jboss.ws.wsse.keyStore&quot;
-								  value=&quot;${tests.output.dir}/resources/jaxrpc/samples/wssecurity/wsse.keystore&quot;/&gt;
-								  &lt;sysproperty key=&quot;org.jboss.ws.wsse.trustStore&quot; 
-								  value=&quot;${tests.output.dir}/resources/jaxrpc/samples/wssecurity/wsse.truststore&quot;/&gt;
-								  &lt;sysproperty key=&quot;org.jboss.ws.wsse.keyStorePassword&quot; value=&quot;jbossws&quot;/&gt;
-								  &lt;sysproperty key=&quot;org.jboss.ws.wsse.trustStorePassword&quot; value=&quot;jbossws&quot;/&gt;
-								  &lt;sysproperty key=&quot;org.jboss.ws.wsse.keyStoreType&quot; value=&quot;jks&quot;/&gt;
-								  &lt;sysproperty key=&quot;org.jboss.ws.wsse.trustStoreType&quot; value=&quot;jks&quot;/&gt;
-								  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;sysproperty key=&quot;org.jboss.ws.wsse.keyStore&quot;
+value=&quot;${tests.output.dir}/resources/jaxrpc/samples/wssecurity/wsse.keystore&quot;/&gt;
+&lt;sysproperty key=&quot;org.jboss.ws.wsse.trustStore&quot; 
+value=&quot;${tests.output.dir}/resources/jaxrpc/samples/wssecurity/wsse.truststore&quot;/&gt;
+&lt;sysproperty key=&quot;org.jboss.ws.wsse.keyStorePassword&quot; value=&quot;jbossws&quot;/&gt;
+&lt;sysproperty key=&quot;org.jboss.ws.wsse.trustStorePassword&quot; value=&quot;jbossws&quot;/&gt;
+&lt;sysproperty key=&quot;org.jboss.ws.wsse.keyStoreType&quot; value=&quot;jks&quot;/&gt;
+&lt;sysproperty key=&quot;org.jboss.ws.wsse.trustStoreType&quot; value=&quot;jks&quot;/&gt;
+]]> </programlisting>
 					<para>
 						<emphasis role="bold">SOAP message exchange</emphasis>
 					</para>
 					<para>Below you see the incomming SOAP message with the details of the security headers ommited. The idea is, that the SOAP body is still plain text, but it is signed in the security header and can therefore not manipulated in transit.</para>
 					<para>Incomming SOAPMessage</para>
-					<programlisting> <![CDATA[
-								  &lt;env:Envelope xmlns:env=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot;&gt;
-								  &lt;env:Header&gt;
-								  &lt;wsse:Security env:mustUnderstand=&quot;1&quot; ...&gt;
-								  &lt;wsu:Timestamp wsu:Id=&quot;timestamp&quot;&gt;...&lt;/wsu:Timestamp&gt;
-								  &lt;wsse:BinarySecurityToken ...&gt;
-								  ...
-								  &lt;/wsse:BinarySecurityToken&gt;
-								  &lt;ds:Signature xmlns:ds=&quot;http://www.w3.org/2000/09/xmldsig#&quot;&gt;
-								  ...
-								  &lt;/ds:Signature&gt;
-								  &lt;/wsse:Security&gt;
-								  &lt;/env:Header&gt;
-								  &lt;env:Body wsu:Id=&quot;element-1-1140197309843-12388840&quot; ...&gt;
-								  &lt;ns1:echoUserType xmlns:ns1=&quot;http://org.jboss.ws/samples/wssecurity&quot;&gt;
-								  &lt;UserType_1 xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;&gt;
-								  &lt;msg&gt;Kermit&lt;/msg&gt;
-								  &lt;/UserType_1&gt;
-								  &lt;/ns1:echoUserType&gt;
-								  &lt;/env:Body&gt;
-								  &lt;/env:Envelope&gt;
-								  ]]> </programlisting>
-				</section>
+<programlisting> <![CDATA[
+&lt;env:Envelope xmlns:env=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot;&gt;
+&lt;env:Header&gt;
+&lt;wsse:Security env:mustUnderstand=&quot;1&quot; ...&gt;
+&lt;wsu:Timestamp wsu:Id=&quot;timestamp&quot;&gt;...&lt;/wsu:Timestamp&gt;
+&lt;wsse:BinarySecurityToken ...&gt;
+...
+&lt;/wsse:BinarySecurityToken&gt;
+&lt;ds:Signature xmlns:ds=&quot;http://www.w3.org/2000/09/xmldsig#&quot;&gt;
+...
+&lt;/ds:Signature&gt;
+&lt;/wsse:Security&gt;
+&lt;/env:Header&gt;
+&lt;env:Body wsu:Id=&quot;element-1-1140197309843-12388840&quot; ...&gt;
+&lt;ns1:echoUserType xmlns:ns1=&quot;http://org.jboss.ws/samples/wssecurity&quot;&gt;
+&lt;UserType_1 xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;&gt;
+&lt;msg&gt;Kermit&lt;/msg&gt;
+&lt;/UserType_1&gt;
+&lt;/ns1:echoUserType&gt;
+&lt;/env:Body&gt;
+&lt;/env:Envelope&gt;
+]]> </programlisting>
+
+</section>
 			</section>
 			<section>
 				<title>Installing the BouncyCastle JCE provider (JDK 1.4)</title>
 				<para>The information below has originaly been provided by <ulink url="http://www.bouncycastle.org/specifications.html#install">The Legion of the Bouncy Castle</ulink>.</para>
 				<para>The provider can be configured as part of your environment via static registration by adding an entry to the java.security properties file (found in $JAVA_HOME/jre/lib/security/java.security, where $JAVA_HOME is the location of your JDK/JRE distribution). You&apos;ll find detailed instructions in the file but basically it comes down to adding a line:</para>
-				<programlisting> <![CDATA[
-							  security.provider.&lt;n&gt;=org.bouncycastle.jce.provider.BouncyCastleProvider
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+security.provider.&lt;n&gt;=org.bouncycastle.jce.provider.BouncyCastleProvider
+]]> </programlisting>
 				<para>Where &lt;n&gt; is the preference you want the provider at.</para>
 				<para>
-					<emphasis role="bold">Note</emphasis>
-				</para>
+			<note><title>Note</title>
+				
 				<para>Issues may arise if the Sun provided providers are not first.</para>
+			</note>
+		</para>
 				<para>Where you put the jar is mostly up to you, although with jdk1.4 the best (and in some cases only) place to have it is in $JAVA_HOME/jre/lib/ext. Under Windows there will normally be a JRE and a JDK install of Java if you think you have installed it correctly and it still doesn&apos;t work chances are you have added the provider to the installation not being used.</para>
 			</section>
 			<section>
@@ -2044,10 +2050,10 @@
 				<para>Configuration of the jUDDI registry happens via an MBean Service that is deployed in the juddi-service.sar archive in the &quot;all&quot; configuration. The configuration of this service can be done in the jboss-service.xml of the META-INF directory in the juddi-service.sar</para>
 				<para>Let us look at the individual configuration items that can be changed.</para>
 				<para>DataSources configuration</para>
-				<programlisting> <![CDATA[
-							  &lt;!-- Datasource to Database--&gt;
-							  &lt;attribute name=&quot;DataSourceUrl&quot;&gt;java:/DefaultDS&lt;/attribute&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;!-- Datasource to Database--&gt;
+&lt;attribute name=&quot;DataSourceUrl&quot;&gt;java:/DefaultDS&lt;/attribute&gt;
+]]> </programlisting>
 				<para>Database Tables (Should they be created on start, Should they be dropped on stop, Should they be dropped on start etc)</para>
 				<programlisting> <![CDATA[
 							  &lt;!-- Should all tables be created on Start--&gt;
@@ -2058,33 +2064,33 @@
 							  &lt;attribute name=&quot;DropOnStart&quot;&gt;false&lt;/attribute&gt;
 							  ]]> </programlisting>
 				<para>JAXR Connection Factory to be bound in JNDI. (Should it be bound? and under what name?)</para>
-				<programlisting> <![CDATA[
-							  &lt;!-- Should I bind a Context to which JaxrConnectionFactory bound--&gt;
-							  &lt;attribute name=&quot;ShouldBindJaxr&quot;&gt;true&lt;/attribute&gt;
-							  
-							  &lt;!-- Context to which JaxrConnectionFactory to bind to. If you have remote clients, please bind it to the global namespace(default behavior). 
-							  To just cater to clients running on the same VM as JBoss, change to java:/JAXR --&gt;
-							  &lt;attribute name=&quot;BindJaxr&quot;&gt;JAXR&lt;/attribute&gt;
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+&lt;!-- Should I bind a Context to which JaxrConnectionFactory bound--&gt;
+&lt;attribute name=&quot;ShouldBindJaxr&quot;&gt;true&lt;/attribute&gt;
+  
+&lt;!-- Context to which JaxrConnectionFactory to bind to. If you have remote clients, please bind it to the global namespace(default behavior). 
+To just cater to clients running on the same VM as JBoss, change to java:/JAXR --&gt;
+&lt;attribute name=&quot;BindJaxr&quot;&gt;JAXR&lt;/attribute&gt;
+]]> </programlisting>
 				<para>Other common configuration:</para>
 				<para>Add authorized users to access the jUDDI registry. (Add a sql insert statement in a single line)</para>
-				<programlisting> <![CDATA[
-							  Look at the script META-INF/ddl/juddi_data.ddl for more details. Example for a user &apos;jboss&apos;
-							  
-							  INSERT INTO PUBLISHER (PUBLISHER_ID,PUBLISHER_NAME,
-							  EMAIL_ADDRESS,IS_ENABLED,IS_ADMIN) 
-							  VALUES (&apos;jboss&apos;,&apos;JBoss User&apos;,&apos;jboss at xxx&apos;,&apos;true&apos;,&apos;true&apos;);
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+Look at the script META-INF/ddl/juddi_data.ddl for more details. Example for a user &apos;jboss&apos;
+  
+INSERT INTO PUBLISHER (PUBLISHER_ID,PUBLISHER_NAME,
+EMAIL_ADDRESS,IS_ENABLED,IS_ADMIN) 
+VALUES (&apos;jboss&apos;,&apos;JBoss User&apos;,&apos;jboss at xxx&apos;,&apos;true&apos;,&apos;true&apos;);
+]]> </programlisting>
 			</section>
 			<section>
 				<title>JBoss JAXR Configuration</title>
 				<para>In this section, we will discuss the configuration needed to run the JAXR API. The JAXR configuration relies on System properties passed to the JVM. The System properties that are needed are:</para>
-				<programlisting> <![CDATA[
-							  javax.xml.registry.ConnectionFactoryClass=org.apache.ws.scout.registry.ConnectionFactoryImpl 
-							  jaxr.query.url=http://localhost:8080/juddi/inquiry 
-							  jaxr.publish.url=http://localhost:8080/juddi/publish
-							  juddi.proxy.transportClass=org.jboss.jaxr.juddi.transport.SaajTransport
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+javax.xml.registry.ConnectionFactoryClass=org.apache.ws.scout.registry.ConnectionFactoryImpl 
+jaxr.query.url=http://localhost:8080/juddi/inquiry 
+jaxr.publish.url=http://localhost:8080/juddi/publish
+juddi.proxy.transportClass=org.jboss.jaxr.juddi.transport.SaajTransport
+]]> </programlisting>
 				<para>Please remember to change the hostname from &quot;localhost&quot; to the hostname of the UDDI service/JBoss Server.</para>
 				<para>You can pass the System Properties to the JVM in the following ways:</para>
 				<itemizedlist>
@@ -2095,9 +2101,9 @@
 						<para> When the client code is running in an external JVM. Then you can pass the properties either as &quot;-D&quot; options to the java process or explicitly set them in the client code(not recommended).</para>
 					</listitem>
 				</itemizedlist>
-				<programlisting> <![CDATA[
-							  System.setProperty(propertyname, propertyvalue);
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+System.setProperty(propertyname, propertyvalue);
+]]> </programlisting>
 			</section>
 			<section>
 				<title>JAXR Sample Code</title>
@@ -2115,144 +2121,144 @@
 				</itemizedlist>
 				<para>Let us now look at some of the common programming tasks performed while using the JAXR API:</para>
 				<para>Getting a JAXR Connection to the registry.</para>
-				<programlisting> <![CDATA[
-							  String queryurl = System.getProperty(&quot;jaxr.query.url&quot;, &quot;http://localhost:8080/juddi/inquiry&quot;);
-							  String puburl = System.getProperty(&quot;jaxr.publish.url&quot;, &quot;http://localhost:8080/juddi/publish&quot;);
-							  
-							  Properties props = new Properties();
-							  props.setProperty(&quot;javax.xml.registry.queryManagerURL&quot;, queryurl);
-							  props.setProperty(&quot;javax.xml.registry.lifeCycleManagerURL&quot;, puburl);
-							  
-							  String transportClass = System.getProperty(&quot;juddi.proxy.transportClass&quot;, &quot;org.jboss.jaxr.juddi.transport.SaajTransport&quot;);
-							  System.setProperty(&quot;juddi.proxy.transportClass&quot;, transportClass);
-							  
-							  // Create the connection, passing it the configuration properties
-							  factory = ConnectionFactory.newInstance();
-							  factory.setProperties(props);
-							  connection = factory.createConnection();
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+String queryurl = System.getProperty(&quot;jaxr.query.url&quot;, &quot;http://localhost:8080/juddi/inquiry&quot;);
+String puburl = System.getProperty(&quot;jaxr.publish.url&quot;, &quot;http://localhost:8080/juddi/publish&quot;);
+.. 
+Properties props = new Properties();
+props.setProperty(&quot;javax.xml.registry.queryManagerURL&quot;, queryurl);
+props.setProperty(&quot;javax.xml.registry.lifeCycleManagerURL&quot;, puburl);
+  
+String transportClass = System.getProperty(&quot;juddi.proxy.transportClass&quot;, &quot;org.jboss.jaxr.juddi.transport.SaajTransport&quot;);
+System.setProperty(&quot;juddi.proxy.transportClass&quot;, transportClass);
+  
+// Create the connection, passing it the configuration properties
+factory = ConnectionFactory.newInstance();
+factory.setProperties(props);
+connection = factory.createConnection();
+]]> </programlisting>
 				<para>Authentication with the registry.</para>
-				<programlisting> <![CDATA[
-							  /**
-							  * Does authentication with the uddi registry
-							  */
-							  protected void login() throws JAXRException
-							  {
-							  PasswordAuthentication passwdAuth = new PasswordAuthentication(userid, passwd.toCharArray());
-							  Set creds = new HashSet();
-							  creds.add(passwdAuth);
-							  
-							  connection.setCredentials(creds);
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+/**
+* Does authentication with the uddi registry
+*/
+protected void login() throws JAXRException
+{
+PasswordAuthentication passwdAuth = new PasswordAuthentication(userid, passwd.toCharArray());
+Set creds = new HashSet();
+creds.add(passwdAuth);
+  
+connection.setCredentials(creds);
+}
+]]> </programlisting>
 				<para>Save a Business</para>
-				<programlisting> <![CDATA[
-							  /**
-							  * Creates a Jaxr Organization with 1 or more services
-							  */
-							  protected Organization createOrganization(String orgname) throws JAXRException
-							  {
-							  Organization org = blm.createOrganization(getIString(orgname));
-							  org.setDescription(getIString(&quot;JBoss Inc&quot;));
-							  Service service = blm.createService(getIString(&quot;JBOSS JAXR Service&quot;));
-							  service.setDescription(getIString(&quot;Services of XML Registry&quot;));
-							  //Create serviceBinding
-							  ServiceBinding serviceBinding = blm.createServiceBinding();
-							  serviceBinding.setDescription(blm.createInternationalString(&quot;Test Service Binding&quot;));
-							  
-							  //Turn validation of URI off
-							  serviceBinding.setValidateURI(false);
-							  serviceBinding.setAccessURI(&quot;http://testjboss.org&quot;);
-							  
-							  // Add the serviceBinding to the service
-							  service.addServiceBinding(serviceBinding);
-							  
-							  User user = blm.createUser();
-							  org.setPrimaryContact(user);
-							  PersonName personName = blm.createPersonName(&quot;Anil S&quot;);
-							  TelephoneNumber telephoneNumber = blm.createTelephoneNumber();
-							  telephoneNumber.setNumber(&quot;111-111-7777&quot;);
-							  telephoneNumber.setType(null);
-							  PostalAddress address = blm.createPostalAddress(&quot;111&quot;, &quot;My Drive&quot;, &quot;BuckHead&quot;, &quot;GA&quot;, &quot;USA&quot;, &quot;1111-111&quot;, &quot;&quot;);
-							  Collection postalAddresses = new ArrayList();
-							  postalAddresses.add(address);
-							  Collection emailAddresses = new ArrayList();
-							  EmailAddress emailAddress = blm.createEmailAddress(&quot;anil at apache.org&quot;);
-							  emailAddresses.add(emailAddress);
-							  
-							  Collection numbers = new ArrayList();
-							  numbers.add(telephoneNumber);
-							  user.setPersonName(personName);
-							  user.setPostalAddresses(postalAddresses);
-							  user.setEmailAddresses(emailAddresses);
-							  user.setTelephoneNumbers(numbers);
-							  
-							  ClassificationScheme cScheme = getClassificationScheme(&quot;ntis-gov:naics&quot;, &quot;&quot;);
-							  Key cKey = blm.createKey(&quot;uuid:C0B9FE13-324F-413D-5A5B-2004DB8E5CC2&quot;);
-							  cScheme.setKey(cKey);
-							  Classification classification = blm.createClassification(cScheme, &quot;Computer Systems Design and Related Services&quot;, &quot;5415&quot;);
-							  org.addClassification(classification);
-							  ClassificationScheme cScheme1 = getClassificationScheme(&quot;D-U-N-S&quot;, &quot;&quot;);
-							  Key cKey1 = blm.createKey(&quot;uuid:3367C81E-FF1F-4D5A-B202-3EB13AD02423&quot;);
-							  cScheme1.setKey(cKey1);
-							  ExternalIdentifier ei = blm.createExternalIdentifier(cScheme1, &quot;D-U-N-S number&quot;, &quot;08-146-6849&quot;);
-							  org.addExternalIdentifier(ei);
-							  org.addService(service);
-							  return org;
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+/**
+* Creates a Jaxr Organization with 1 or more services
+*/
+protected Organization createOrganization(String orgname) throws JAXRException
+{
+Organization org = blm.createOrganization(getIString(orgname));
+org.setDescription(getIString(&quot;JBoss Inc&quot;));
+Service service = blm.createService(getIString(&quot;JBOSS JAXR Service&quot;));
+service.setDescription(getIString(&quot;Services of XML Registry&quot;));
+//Create serviceBinding
+ServiceBinding serviceBinding = blm.createServiceBinding();
+serviceBinding.setDescription(blm.createInternationalString(&quot;Test Service Binding&quot;));
+  
+//Turn validation of URI off
+serviceBinding.setValidateURI(false);
+serviceBinding.setAccessURI(&quot;http://testjboss.org&quot;);
+.. 
+// Add the serviceBinding to the service
+service.addServiceBinding(serviceBinding);
+  
+User user = blm.createUser();
+org.setPrimaryContact(user);
+PersonName personName = blm.createPersonName(&quot;Anil S&quot;);
+TelephoneNumber telephoneNumber = blm.createTelephoneNumber();
+telephoneNumber.setNumber(&quot;111-111-7777&quot;);
+telephoneNumber.setType(null);
+PostalAddress address = blm.createPostalAddress(&quot;111&quot;, &quot;My Drive&quot;, &quot;BuckHead&quot;, &quot;GA&quot;, &quot;USA&quot;, &quot;1111-111&quot;, &quot;&quot;);
+Collection postalAddresses = new ArrayList();
+postalAddresses.add(address);
+Collection emailAddresses = new ArrayList();
+EmailAddress emailAddress = blm.createEmailAddress(&quot;anil at apache.org&quot;);
+emailAddresses.add(emailAddress);
+  
+Collection numbers = new ArrayList();
+numbers.add(telephoneNumber);
+user.setPersonName(personName);
+user.setPostalAddresses(postalAddresses);
+user.setEmailAddresses(emailAddresses);
+user.setTelephoneNumbers(numbers);
+  
+ClassificationScheme cScheme = getClassificationScheme(&quot;ntis-gov:naics&quot;, &quot;&quot;);
+Key cKey = blm.createKey(&quot;uuid:C0B9FE13-324F-413D-5A5B-2004DB8E5CC2&quot;);
+cScheme.setKey(cKey);
+Classification classification = blm.createClassification(cScheme, &quot;Computer Systems Design and Related Services&quot;, &quot;5415&quot;);
+org.addClassification(classification);
+ClassificationScheme cScheme1 = getClassificationScheme(&quot;D-U-N-S&quot;, &quot;&quot;);
+Key cKey1 = blm.createKey(&quot;uuid:3367C81E-FF1F-4D5A-B202-3EB13AD02423&quot;);
+cScheme1.setKey(cKey1);
+ExternalIdentifier ei = blm.createExternalIdentifier(cScheme1, &quot;D-U-N-S number&quot;, &quot;08-146-6849&quot;);
+org.addExternalIdentifier(ei);
+org.addService(service);
+return org;
+}
+]]> </programlisting>
 				<para>Query a Business</para>
-				<programlisting> <![CDATA[
-							  /**
-							  * Locale aware Search a business in the registry
-							  */
-							  public void searchBusiness(String bizname) throws JAXRException
-							  {
-							  try
-							  {
-							  // Get registry service and business query manager
-							  this.getJAXREssentials();
-							  
-							  // Define find qualifiers and name patterns
-							  Collection findQualifiers = new ArrayList();
-							  findQualifiers.add(FindQualifier.SORT_BY_NAME_ASC);
-							  Collection namePatterns = new ArrayList();
-							  String pattern = &quot;%&quot; + bizname + &quot;%&quot;;
-							  LocalizedString ls = blm.createLocalizedString(Locale.getDefault(), pattern);
-							  namePatterns.add(ls);
-							  
-							  // Find based upon qualifier type and values
-							  BulkResponse response = bqm.findOrganizations(findQualifiers, namePatterns, null, null, null, null);
-							  
-							  // check how many organisation we have matched
-							  Collection orgs = response.getCollection();
-							  if (orgs == null)
-							  {
-							  log.debug(&quot; -- Matched 0 orgs&quot;);
-							  
-							  }
-							  else
-							  {
-							  log.debug(&quot; -- Matched &quot; + orgs.size() + &quot; organizations -- &quot;);
-							  
-							  // then step through them
-							  for (Iterator orgIter = orgs.iterator(); orgIter.hasNext();)
-							  {
-							  Organization org = (Organization)orgIter.next();
-							  log.debug(&quot;Org name: &quot; + getName(org));
-							  log.debug(&quot;Org description: &quot; + getDescription(org));
-							  log.debug(&quot;Org key id: &quot; + getKey(org));
-							  checkUser(org);
-							  checkServices(org);
-							  }
-							  }
-							  }
-							  finally
-							  {
-							  connection.close();
-							  }
-							  }
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+/**
+* Locale aware Search a business in the registry
+*/
+public void searchBusiness(String bizname) throws JAXRException
+{
+try
+{
+// Get registry service and business query manager
+this.getJAXREssentials();
+  
+// Define find qualifiers and name patterns
+Collection findQualifiers = new ArrayList();
+findQualifiers.add(FindQualifier.SORT_BY_NAME_ASC);
+Collection namePatterns = new ArrayList();
+String pattern = &quot;%&quot; + bizname + &quot;%&quot;;
+LocalizedString ls = blm.createLocalizedString(Locale.getDefault(), pattern);
+namePatterns.add(ls);
+  
+// Find based upon qualifier type and values
+BulkResponse response = bqm.findOrganizations(findQualifiers, namePatterns, null, null, null, null);
+  
+// check how many organisation we have matched
+Collection orgs = response.getCollection();
+if (orgs == null)
+{
+log.debug(&quot; -- Matched 0 orgs&quot;);
+  
+}
+else
+{
+log.debug(&quot; -- Matched &quot; + orgs.size() + &quot; organizations -- &quot;);
+  
+// then step through them
+for (Iterator orgIter = orgs.iterator(); orgIter.hasNext();)
+{
+Organization org = (Organization)orgIter.next();
+log.debug(&quot;Org name: &quot; + getName(org));
+log.debug(&quot;Org description: &quot; + getDescription(org));
+log.debug(&quot;Org key id: &quot; + getKey(org));
+checkUser(org);
+checkServices(org);
+}
+}
+}
+finally
+{
+connection.close();
+}
+}
+]]> </programlisting>
 				<para>For more examples of code using the JAXR API, please refer to the resources in the Resources Section.</para>
 			</section>
 			<section>
@@ -2303,151 +2309,152 @@
 			<section>
 				<title>Specification</title>
 				<para>WS-Policy is defined by the combination of the following specifications:</para>
-				<programlisting> <![CDATA[
-							  * <ulink url="http://www.w3.org/Submission/WS-Policy/"> WS-Policy specification</ulink>
-							  * <ulink url="http://www.w3.org/Submission/WS-PolicyAttachment/"> WS-Policy-Attachment specification</ulink>
-							  ]]> </programlisting>
+<programlisting> <![CDATA[
+* <ulink url="http://www.w3.org/Submission/WS-Policy/"> WS-Policy specification</ulink>
+* <ulink url="http://www.w3.org/Submission/WS-PolicyAttachment/"> WS-Policy-Attachment specification</ulink>
+ ]]> </programlisting>
 					  </section>
 					  <section>
 						  <title>Using policies in a user provided wsdl</title>
 						  <para>To attach policies in this manner, the only thing you have to do in a webservice class is to provide a custom wsdl. This will cause JBossws to skip wsdl generation at deploy time, since the wsdl file you provided will be published. Please refer to specification (WS-Policy-Attachment) to learn how to modify wsdl to attach a policy.</para>
 						  <para>Here you find an example of a webservice class and provided wsdl with a policy containing a domain assertion for JBoss wssecurity.</para>
-						  <programlisting> <![CDATA[
-									    @WebService(name = &quot;Hello&quot;, 
-									    targetNamespace = &quot;http://org.jboss.ws/samples/wssecuritypolicy&quot;,
-									    wsdlLocation=&quot;WEB-INF/wsdl/HelloService.wsdl&quot;)
-									    @SOAPBinding(style = SOAPBinding.Style.RPC)
-									    public class HelloJavaBean
-									    {
-									    private Logger log = Logger.getLogger(HelloJavaBean.class);
-									    
-									    @WebMethod
-									    public UserType echoUserType(@WebParam(name = &quot;user&quot;) UserType in0)
-									    {
-									    log.info(in0);
-									    return in0;
-									    }
-									    }
-									    &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
-									    &lt;definitions name=&apos;HelloService&apos; targetNamespace=&apos;http://org.jboss.ws/samples/wssecuritypolicy&apos; xmlns=&apos;http://schemas.xmlsoap.org/wsdl/&apos; xmlns:ns1=&apos;http://org.jboss.ws/samples/wssecurity&apos; xmlns:soap=&apos;http://schemas.xmlsoap.org/wsdl/soap/&apos; xmlns:tns=&apos;http://org.jboss.ws/samples/wssecuritypolicy&apos; xmlns:wsp=&apos;http://schemas.xmlsoap.org/ws/2004/09/policy&apos; xmlns:xsd=&apos;http://www.w3.org/2001/XMLSchema&apos;&gt;
-									    &lt;types&gt;
-									    &lt;xs:schema targetNamespace=&apos;http://org.jboss.ws/samples/wssecurity&apos; version=&apos;1.0&apos; xmlns:xs=&apos;http://www.w3.org/2001/XMLSchema&apos;&gt;
-									    &lt;xs:complexType name=&apos;UserType&apos;&gt;
-									    &lt;xs:sequence&gt;
-									    &lt;xs:element minOccurs=&apos;0&apos; name=&apos;msg&apos; type=&apos;xs:string&apos;/&gt;
-									    &lt;/xs:sequence&gt;
-									    &lt;/xs:complexType&gt;
-									    &lt;/xs:schema&gt;
-									    &lt;/types&gt;
-									    &lt;wsp:Policy wsu:Id=&apos;X509EndpointPolicy&apos; xmlns:wsu=&apos;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&apos;&gt;
-									    &lt;wsp:All&gt;
-									    &lt;sp:jboss-ws-security xmlns:sp=&apos;http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd&apos;&gt;
-									    &lt;sp:key-store-file&gt;WEB-INF/wsse.keystore&lt;/sp:key-store-file&gt;
-									    &lt;sp:key-store-password&gt;jbossws&lt;/sp:key-store-password&gt;
-									    &lt;sp:trust-store-file&gt;WEB-INF/wsse.truststore&lt;/sp:trust-store-file&gt;
-									    &lt;sp:trust-store-password&gt;jbossws&lt;/sp:trust-store-password&gt;
-									    &lt;sp:config&gt;
-									    &lt;sp:encrypt alias=&apos;wsse&apos; type=&apos;x509v3&apos;/&gt;
-									    &lt;sp:requires&gt;
-									    &lt;sp:encryption/&gt;
-									    &lt;/sp:requires&gt;
-									    &lt;/sp:config&gt;
-									    &lt;/sp:jboss-ws-security&gt;
-									    &lt;/wsp:All&gt;
-									    &lt;/wsp:Policy&gt;
-									    &lt;message name=&apos;Hello_echoUserType&apos;&gt;
-									    &lt;part name=&apos;user&apos; type=&apos;ns1:UserType&apos;/&gt;
-									    &lt;/message&gt;
-									    &lt;message name=&apos;Hello_echoUserTypeResponse&apos;&gt;
-									    &lt;part name=&apos;return&apos; type=&apos;ns1:UserType&apos;/&gt;
-									    &lt;/message&gt;
-									    &lt;portType name=&apos;Hello&apos;&gt;
-									    &lt;operation name=&apos;echoUserType&apos; parameterOrder=&apos;user&apos;&gt;
-									    &lt;input message=&apos;tns:Hello_echoUserType&apos;/&gt;
-									    &lt;output message=&apos;tns:Hello_echoUserTypeResponse&apos;/&gt;
-									    &lt;/operation&gt;
-									    &lt;/portType&gt;
-									    &lt;binding name=&apos;HelloBinding&apos; type=&apos;tns:Hello&apos;&gt;
-									    &lt;wsp:PolicyReference URI=&apos;#X509EndpointPolicy&apos;/&gt;
-									    &lt;soap:binding style=&apos;rpc&apos; transport=&apos;http://schemas.xmlsoap.org/soap/http&apos;/&gt;
-									    &lt;operation name=&apos;echoUserType&apos;&gt;
-									    &lt;soap:operation soapAction=&apos;&apos;/&gt;
-									    &lt;input&gt;
-									    &lt;soap:body namespace=&apos;http://org.jboss.ws/samples/wssecuritypolicy&apos; use=&apos;literal&apos;/&gt;
-									    &lt;/input&gt;
-									    &lt;output&gt;
-									    &lt;soap:body namespace=&apos;http://org.jboss.ws/samples/wssecuritypolicy&apos; use=&apos;literal&apos;/&gt;
-									    &lt;/output&gt;
-									    &lt;/operation&gt;
-									    &lt;/binding&gt;
-									    &lt;service name=&apos;HelloService&apos;&gt;
-									    &lt;port binding=&apos;tns:HelloBinding&apos; name=&apos;HelloPort&apos;&gt;
-									    &lt;soap:address location=&apos;REPLACE_WITH_ACTUAL_URL&apos;/&gt;
-									    &lt;/port&gt;
-									    &lt;/service&gt;
-									    &lt;/definitions&gt;
-									    ]]> </programlisting>
-						  <para>Please note in the wsdl file the wsp:Policy element and the wsp:PolicyReference in &apos;HelloBinding&apos; binding Element.</para>
+<programlisting> <![CDATA[
+ at WebService(name = &quot;Hello&quot;, 
+targetNamespace = &quot;http://org.jboss.ws/samples/wssecuritypolicy&quot;,
+wsdlLocation=&quot;WEB-INF/wsdl/HelloService.wsdl&quot;)
+ at SOAPBinding(style = SOAPBinding.Style.RPC)
+public class HelloJavaBean
+{
+private Logger log = Logger.getLogger(HelloJavaBean.class);
+..
+ at WebMethod
+public UserType echoUserType(@WebParam(name = &quot;user&quot;) UserType in0)
+{
+log.info(in0);
+return in0;
+}
+}
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+&lt;definitions name=&apos;HelloService&apos; targetNamespace=&apos;http://org.jboss.ws/samples/wssecuritypolicy&apos; xmlns=&apos;http://schemas.xmlsoap.org/wsdl/&apos; xmlns:ns1=&apos;http://org.jboss.ws/samples/wssecurity&apos; xmlns:soap=&apos;http://schemas.xmlsoap.org/wsdl/soap/&apos; xmlns:tns=&apos;http://org.jboss.ws/samples/wssecuritypolicy&apos; xmlns:wsp=&apos;http://schemas.xmlsoap.org/ws/2004/09/policy&apos; xmlns:xsd=&apos;http://www.w3.org/2001/XMLSchema&apos;&gt;
+&lt;types&gt;
+&lt;xs:schema targetNamespace=&apos;http://org.jboss.ws/samples/wssecurity&apos; version=&apos;1.0&apos; xmlns:xs=&apos;http://www.w3.org/2001/XMLSchema&apos;&gt;
+&lt;xs:complexType name=&apos;UserType&apos;&gt;
+&lt;xs:sequence&gt;
+&lt;xs:element minOccurs=&apos;0&apos; name=&apos;msg&apos; type=&apos;xs:string&apos;/&gt;
+&lt;/xs:sequence&gt;
+&lt;/xs:complexType&gt;
+&lt;/xs:schema&gt;
+&lt;/types&gt;
+&lt;wsp:Policy wsu:Id=&apos;X509EndpointPolicy&apos; xmlns:wsu=&apos;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&apos;&gt;
+&lt;wsp:All&gt;
+&lt;sp:jboss-ws-security xmlns:sp=&apos;http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd&apos;&gt;
+&lt;sp:key-store-file&gt;WEB-INF/wsse.keystore&lt;/sp:key-store-file&gt;
+&lt;sp:key-store-password&gt;jbossws&lt;/sp:key-store-password&gt;
+&lt;sp:trust-store-file&gt;WEB-INF/wsse.truststore&lt;/sp:trust-store-file&gt;
+&lt;sp:trust-store-password&gt;jbossws&lt;/sp:trust-store-password&gt;
+&lt;sp:config&gt;
+&lt;sp:encrypt alias=&apos;wsse&apos; type=&apos;x509v3&apos;/&gt;
+&lt;sp:requires&gt;
+&lt;sp:encryption/&gt;
+&lt;/sp:requires&gt;
+&lt;/sp:config&gt;
+&lt;/sp:jboss-ws-security&gt;
+&lt;/wsp:All&gt;
+&lt;/wsp:Policy&gt;
+&lt;message name=&apos;Hello_echoUserType&apos;&gt;
+&lt;part name=&apos;user&apos; type=&apos;ns1:UserType&apos;/&gt;
+&lt;/message&gt;
+&lt;message name=&apos;Hello_echoUserTypeResponse&apos;&gt;
+&lt;part name=&apos;return&apos; type=&apos;ns1:UserType&apos;/&gt;
+&lt;/message&gt;
+&lt;portType name=&apos;Hello&apos;&gt;
+&lt;operation name=&apos;echoUserType&apos; parameterOrder=&apos;user&apos;&gt;
+&lt;input message=&apos;tns:Hello_echoUserType&apos;/&gt;
+&lt;output message=&apos;tns:Hello_echoUserTypeResponse&apos;/&gt;
+&lt;/operation&gt;
+&lt;/portType&gt;
+&lt;binding name=&apos;HelloBinding&apos; type=&apos;tns:Hello&apos;&gt;
+&lt;wsp:PolicyReference URI=&apos;#X509EndpointPolicy&apos;/&gt;
+&lt;soap:binding style=&apos;rpc&apos; transport=&apos;http://schemas.xmlsoap.org/soap/http&apos;/&gt;
+&lt;operation name=&apos;echoUserType&apos;&gt;
+&lt;soap:operation soapAction=&apos;&apos;/&gt;
+&lt;input&gt;
+&lt;soap:body namespace=&apos;http://org.jboss.ws/samples/wssecuritypolicy&apos; use=&apos;literal&apos;/&gt;
+&lt;/input&gt;
+&lt;output&gt;
+&lt;soap:body namespace=&apos;http://org.jboss.ws/samples/wssecuritypolicy&apos; use=&apos;literal&apos;/&gt;
+&lt;/output&gt;
+&lt;/operation&gt;
+&lt;/binding&gt;
+&lt;service name=&apos;HelloService&apos;&gt;
+&lt;port binding=&apos;tns:HelloBinding&apos; name=&apos;HelloPort&apos;&gt;
+&lt;soap:address location=&apos;REPLACE_WITH_ACTUAL_URL&apos;/&gt;
+&lt;/port&gt;
+&lt;/service&gt;
+&lt;/definitions&gt;
+]]> </programlisting>
+
+<para>Please note in the wsdl file the wsp:Policy element and the wsp:PolicyReference in &apos;HelloBinding&apos; binding Element.</para>
 					  </section>
 					  <section>
 						  <title>Using policies with JBoss annotations</title>
 						  <para>Using JBoss proprietary annotation you only have to provide the policy xml, leaving wsdl generation to the JBossWS deployer.</para>
 						  <para>There are two annotations to use, the first one (@PolicyAttachment) containing an array of the second one (@Policy): this lets you have many policies attached to a class or method. In future domain policy implementations might ship domain annotations extending the @Policy annotation to provide needed metadata directly as annotation parameters. The current @Policy annotation takes a reference to a xml file containing a generic policy description written respecting ws-policy specification rules.</para>
-						  <programlisting> <![CDATA[
-									    /**
-									    
-									    @Target(ElementType.TYPE) 
-									    @Retention(RetentionPolicy.RUNTIME)
-									    public @interface PolicyAttachment {
-									    Policy[] value();
-									    }
-									    
-									    @Retention(RetentionPolicy.RUNTIME)
-									    public @interface Policy {
-									    
-									    public String policyFileLocation();
-									    
-									    public PolicyScopeLevel scope();
-									    }
-									    ]]> </programlisting>
+<programlisting> <![CDATA[
+/**
+   
+ at Target(ElementType.TYPE) 
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface PolicyAttachment {
+Policy[] value();
+}
+...
+ at Retention(RetentionPolicy.RUNTIME)
+public @interface Policy {
+   
+public String policyFileLocation();
+   
+public PolicyScopeLevel scope();
+}
+]]> </programlisting>
 						  <para>And here you have the previous section example re-implemented using annotations and xml policy file:</para>
-						  <programlisting> <![CDATA[
-									    @WebService(name = &quot;Hello&quot;, targetNamespace = &quot;http://org.jboss.ws/samples/wssecurityAnnotatedpolicy&quot;)
-									    @PolicyAttachment({@Policy( policyFileLocation=&quot;WEB-INF/Policy.xml&quot;, scope = PolicyScopeLevel.WSDL_PORT ) })
-									    @SOAPBinding(style = SOAPBinding.Style.RPC)
-									    public class HelloJavaBean
-									    {
-									    private Logger log = Logger.getLogger(HelloJavaBean.class);
-									    
-									    @WebMethod
-									    public UserType echoUserType(@WebParam(name = &quot;user&quot;) UserType in0)
-									    {
-									    log.info(in0);
-									    return in0;
-									    }
-									    }
-									    &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
-									    
-									    &lt;wsp:Policy wsu:Id=&quot;X509EndpointPolicy&quot;  xmlns:wsp=&quot;http://schemas.xmlsoap.org/ws/2004/09/policy&quot; 
-									    xmlns:wsu=&quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&quot;&gt;
-									    &lt;wsp:ExactlyOne&gt;
-									    &lt;wsp:All&gt;
-									    &lt;sp:jboss-ws-security xmlns:sp=&quot;http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd&quot;&gt;
-									    &lt;sp:key-store-file&gt;WEB-INF/wsse.keystore&lt;/sp:key-store-file&gt;
-									    &lt;sp:key-store-password&gt;jbossws&lt;/sp:key-store-password&gt;
-									    &lt;sp:trust-store-file&gt;WEB-INF/wsse.truststore&lt;/sp:trust-store-file&gt;
-									    &lt;sp:trust-store-password&gt;jbossws&lt;/sp:trust-store-password&gt;
-									    &lt;sp:config&gt;
-									    &lt;sp:encrypt type=&quot;x509v3&quot; alias=&quot;wsse&quot;/&gt;
-									    &lt;sp:requires&gt;
-									    &lt;sp:encryption/&gt;
-									    &lt;/sp:requires&gt;
-									    &lt;/sp:config&gt;
-									    &lt;/sp:jboss-ws-security&gt;
-									    &lt;/wsp:All&gt;
-									    &lt;/wsp:ExactlyOne&gt;               
-									    &lt;/wsp:Policy&gt;
-									    ]]> </programlisting>
+<programlisting> <![CDATA[
+ at WebService(name = &quot;Hello&quot;, targetNamespace = &quot;http://org.jboss.ws/samples/wssecurityAnnotatedpolicy&quot;)
+ at PolicyAttachment({@Policy( policyFileLocation=&quot;WEB-INF/Policy.xml&quot;, scope = PolicyScopeLevel.WSDL_PORT ) })
+ at SOAPBinding(style = SOAPBinding.Style.RPC)
+public class HelloJavaBean
+{
+private Logger log = Logger.getLogger(HelloJavaBean.class);
+   
+ at WebMethod
+public UserType echoUserType(@WebParam(name = &quot;user&quot;) UserType in0)
+{
+log.info(in0);
+return in0;
+}
+}
+&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
+...
+&lt;wsp:Policy wsu:Id=&quot;X509EndpointPolicy&quot;  xmlns:wsp=&quot;http://schemas.xmlsoap.org/ws/2004/09/policy&quot; 
+xmlns:wsu=&quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&quot;&gt;
+&lt;wsp:ExactlyOne&gt;
+&lt;wsp:All&gt;
+&lt;sp:jboss-ws-security xmlns:sp=&quot;http://www.jboss.com/ws-security/schema/jboss-ws-security_1_0.xsd&quot;&gt;
+&lt;sp:key-store-file&gt;WEB-INF/wsse.keystore&lt;/sp:key-store-file&gt;
+&lt;sp:key-store-password&gt;jbossws&lt;/sp:key-store-password&gt;
+&lt;sp:trust-store-file&gt;WEB-INF/wsse.truststore&lt;/sp:trust-store-file&gt;
+&lt;sp:trust-store-password&gt;jbossws&lt;/sp:trust-store-password&gt;
+&lt;sp:config&gt;
+&lt;sp:encrypt type=&quot;x509v3&quot; alias=&quot;wsse&quot;/&gt;
+&lt;sp:requires&gt;
+&lt;sp:encryption/&gt;
+&lt;/sp:requires&gt;
+&lt;/sp:config&gt;
+&lt;/sp:jboss-ws-security&gt;
+&lt;/wsp:All&gt;
+&lt;/wsp:ExactlyOne&gt;               
+&lt;/wsp:Policy&gt;
+]]> </programlisting>
 					  </section>
 				  </section>
 			  </section>
@@ -2459,138 +2466,138 @@
 					  <para>For the set of standard annotations, please have a look at <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=JAX-WS_Annotations">JAX-WS Annotations</ulink></para>
 					  <section>
 						  <title>EndpointConfig</title>
-						  <programlisting> <![CDATA[
-									    /**
-									    * Defines an endpoint or client configuration. 
-									    * This annotation is valid on an endpoint implementaion bean or a SEI.
-									    * 
-									    * @author Heiko.Braun at jboss.org
-									    * @since 16.01.2007
-									    */
-									    @Retention(value = RetentionPolicy.RUNTIME)
-									    @Target(value = { ElementType.TYPE })
-									    public @interface EndpointConfig {
-									    
-									    /**
-									    * The optional config-name element gives the configuration name that must be present in
-									    * the configuration given by element config-file.
-									    *
-									    * Server side default: Standard Endpoint
-									    * Client side default: Standard Client
-									    */
-									    String configName() default &quot;&quot;;
-									    
-									    /**
-									    * The optional config-file element is a URL or resource name for the configuration.
-									    *
-									    * Server side default: standard-jaxws-endpoint-config.xml
-									    * Client side default: standard-jaxws-client-config.xml
-									    */
-									    String configFile() default &quot;&quot;;
-									    }
-									    ]]> </programlisting>
+<programlisting> <![CDATA[
+/**
+* Defines an endpoint or client configuration. 
+* This annotation is valid on an endpoint implementaion bean or a SEI.
+* 
+* @author Heiko.Braun at jboss.org
+* @since 16.01.2007
+*/
+ at Retention(value = RetentionPolicy.RUNTIME)
+ at Target(value = { ElementType.TYPE })
+public @interface EndpointConfig {
+... 
+/**
+* The optional config-name element gives the configuration name that must be present in
+* the configuration given by element config-file.
+* 
+* Server side default: Standard Endpoint
+* Client side default: Standard Client
+*/
+String configName() default &quot;&quot;;
+...
+/**
+* The optional config-file element is a URL or resource name for the configuration.
+*
+* Server side default: standard-jaxws-endpoint-config.xml
+* Client side default: standard-jaxws-client-config.xml
+*/
+String configFile() default &quot;&quot;;
+}
+]]> </programlisting>
 					  </section>
 					  <section>
 						  <title>WebContext</title>
-						  <programlisting> <![CDATA[
-									    /**
-									    * Provides web context specific meta data to EJB based web service endpoints.
-									    *
-									    * @author thomas.diesler at jboss.org
-									    * @since 26-Apr-2005
-									    */
-									    @Retention(value = RetentionPolicy.RUNTIME)
-									    @Target(value = { ElementType.TYPE })
-									    public @interface WebContext {
-									    
-									    /** 
-									    * The contextRoot element specifies the context root that the web service endpoint is deployed to.
-									    * If it is not specified it will be derived from the deployment short name.
-									    * 
-									    * Applies to server side port components only. 
-									    */
-									    String contextRoot() default &quot;&quot;;
-									    
-									    /** 
-									    * The virtual hosts that the web service endpoint is deployed to.
-									    * 
-									    * Applies to server side port components only.
-									    */
-									    String[] virtualHosts() default {};
-									    
-									    /** 
-									    * Relative path that is appended to the contextRoot to form fully qualified
-									    * endpoint address for the web service endpoint.
-									    * 
-									    * Applies to server side port components only. 
-									    */
-									    String urlPattern() default &quot;&quot;;
-									    
-									    /**
-									    * The authMethod is used to configure the authentication mechanism for the web service. 
-									    * As a prerequisite to gaining access to any web service which are protected by an authorization
-									    * constraint, a user must have authenticated using the configured mechanism.
-									    *
-									    * Legal values for this element are &quot;BASIC&quot;, or &quot;CLIENT-CERT&quot;.
-									    */
-									    String authMethod() default &quot;&quot;;
-									    
-									    /**
-									    * The transportGuarantee specifies that the communication
-									    * between client and server should be NONE, INTEGRAL, or
-									    * CONFIDENTIAL. NONE means that the application does not require any
-									    * transport guarantees. A value of INTEGRAL means that the application
-									    * requires that the data sent between the client and server be sent in
-									    * such a way that it can&apos;t be changed in transit. CONFIDENTIAL means
-									    * that the application requires that the data be transmitted in a
-									    * fashion that prevents other entities from observing the contents of
-									    * the transmission. In most cases, the presence of the INTEGRAL or
-									    * CONFIDENTIAL flag will indicate that the use of SSL is required.
-									    */
-									    String transportGuarantee() default &quot;&quot;;
-									    
-									    /**
-									    * A secure endpoint does not by default publish it&apos;s wsdl on an unsecure transport.
-									    * You can override this behaviour by explicitly setting the secureWSDLAccess flag to false.
-									    * 
-									    * Protect access to WSDL. See http://jira.jboss.org/jira/browse/JBWS-723   
-									    */
-									    boolean secureWSDLAccess() default true;
-									    }
-									    ]]> </programlisting>
+<programlisting> <![CDATA[
+/**
+* Provides web context specific meta data to EJB based web service endpoints.
+*
+* @author thomas.diesler at jboss.org
+* @since 26-Apr-2005
+*/
+ at Retention(value = RetentionPolicy.RUNTIME)
+ at Target(value = { ElementType.TYPE })
+public @interface WebContext {
+... 
+/** 
+* The contextRoot element specifies the context root that the web service endpoint is deployed to.
+* If it is not specified it will be derived from the deployment short name.
+* 
+* Applies to server side port components only. 
+*/
+String contextRoot() default &quot;&quot;;
+...
+/** 
+* The virtual hosts that the web service endpoint is deployed to.
+* 
+* Applies to server side port components only.
+*/
+String[] virtualHosts() default {};
+    
+/** 
+* Relative path that is appended to the contextRoot to form fully qualified
+* endpoint address for the web service endpoint.
+* 
+* Applies to server side port components only. 
+*/
+String urlPattern() default &quot;&quot;;
+    
+/**
+* The authMethod is used to configure the authentication mechanism for the web service. 
+* As a prerequisite to gaining access to any web service which are protected by an authorization
+* constraint, a user must have authenticated using the configured mechanism.
+*
+* Legal values for this element are &quot;BASIC&quot;, or &quot;CLIENT-CERT&quot;.
+*/
+String authMethod() default &quot;&quot;;
+   
+/**
+* The transportGuarantee specifies that the communication
+* between client and server should be NONE, INTEGRAL, or
+* CONFIDENTIAL. NONE means that the application does not require any
+* transport guarantees. A value of INTEGRAL means that the application
+* requires that the data sent between the client and server be sent in
+* such a way that it can&apos;t be changed in transit. CONFIDENTIAL means
+* that the application requires that the data be transmitted in a
+* fashion that prevents other entities from observing the contents of
+* the transmission. In most cases, the presence of the INTEGRAL or
+* CONFIDENTIAL flag will indicate that the use of SSL is required.
+*/
+String transportGuarantee() default &quot;&quot;;
+    
+/**
+* A secure endpoint does not by default publish it&apos;s wsdl on an unsecure transport.
+* You can override this behaviour by explicitly setting the secureWSDLAccess flag to false.
+* 
+* Protect access to WSDL. See http://jira.jboss.org/jira/browse/JBWS-723   
+*/
+boolean secureWSDLAccess() default true;
+}
+]]> </programlisting>
 					  </section>
 					  <section>
 						  <title>SecurityDomain</title>
-						  <programlisting> <![CDATA[
-									    /**
-									    * Annotation for specifying the JBoss security domain for an EJB
-									    * 
-									    * @author &lt;a href=&quot;mailto:bill at jboss.org&quot;&gt;Bill Burke&lt;/a&gt;
-									    **/
-									    @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME)
-									    public @interface SecurityDomain
-									    {
-									    /**
-									    * The required name for the security domain.
-									    * 
-									    * Do not use the JNDI name
-									    * 
-									    *    Good: &quot;MyDomain&quot;
-									    *    Bad:  &quot;java:/jaas/MyDomain&quot;
-									    */
-									    String value();
-									    
-									    /**
-									    * The name for the unauthenticated pricipal
-									    */
-									    String unauthenticatedPrincipal() default &quot;&quot;;
-									    }
-									    ]]> </programlisting>
+<programlisting> <![CDATA[
+/**
+* Annotation for specifying the JBoss security domain for an EJB
+* 
+* @author &lt;a href=&quot;mailto:bill at jboss.org&quot;&gt;Bill Burke&lt;/a&gt;
+**/
+ at Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME)
+public @interface SecurityDomain
+{
+/**
+* The required name for the security domain.
+* 
+* Do not use the JNDI name
+* 
+*    Good: &quot;MyDomain&quot;
+*    Bad:  &quot;java:/jaas/MyDomain&quot;
+*/
+String value();
+   
+/**
+* The name for the unauthenticated pricipal
+*/
+String unauthenticatedPrincipal() default &quot;&quot;;
+}
+]]> </programlisting>
 					  </section>
 				  </section>
 			  </section>
 			  <section>
-				  <title>Appendix</title>
+				  <title>Web Services Appendix</title>
 				  <para>
 					  <ulink url="http://jbws.dyndns.org/mediawiki/index.php?title=JAX-WS_Endpoint_Configuration">JAX-WS Endpoint Configuration</ulink>
 				  </para>




More information about the jboss-cvs-commits mailing list