You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by dk...@apache.org on 2013/06/24 19:10:57 UTC

svn commit: r867253 [40/46] - in /websites/production/cxf/content: ./ 2008/04/28/ 2008/06/20/ 2009/02/10/ 2009/08/04/ cache/ docs/ docs/cxf-architecture.thumbs/ docs/cxf-dependency-graphs.thumbs/ docs/logbrowser-configuration.thumbs/ docs/logbrowser-so...

Modified: websites/production/cxf/content/docs/ws-policy-framework-overview.html
==============================================================================
--- websites/production/cxf/content/docs/ws-policy-framework-overview.html (original)
+++ websites/production/cxf/content/docs/ws-policy-framework-overview.html Mon Jun 24 17:10:51 2013
@@ -25,6 +25,18 @@
 <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
 <meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source">
 <meta name="description" content="Apache CXF, Services Framework - WS-Policy Framework Overview">
+
+  <link href='http://cxf.apache.org/resources/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' />
+  <link href='http://cxf.apache.org/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
+  
+  <script type="text/javascript">
+  SyntaxHighlighter.defaults['toolbar'] = false;
+  SyntaxHighlighter.all();
+  </script>
+ 
     <title>
 Apache CXF -- WS-Policy Framework Overview
     </title>
@@ -42,19 +54,15 @@ Apache CXF -- WS-Policy Framework Overvi
     <td id="cell-1-0">&nbsp;</td>
     <td id="cell-1-1">&nbsp;</td>
     <td id="cell-1-2">
-      <div style="padding: 5px;">
-        <div id="banner">
-          <!-- Banner -->
-<div id="banner-content">
+      <!-- Banner -->
+<div class="banner" id="banner"><p>
 <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap>
 <a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a>
 </td><td align="right" colspan="1" nowrap>
 <a shape="rect" href="http://www.apache.org/" title="The Apache Sofware Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a>
 </td></tr></table>
-</div>
-          <!-- Banner -->
-        </div>
-      </div>
+</p></div>
+      <!-- Banner -->
       <div id="top-menu">
         <table border="0" cellpadding="1" cellspacing="0" width="100%">
           <tr>
@@ -94,7 +102,7 @@ Apache CXF -- WS-Policy Framework Overvi
 
 
 <hr>
-<ul class="alternate" type="square"><li>Search
+<ul class="alternate" type="square"><li>Search<br clear="none">
 
 <form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
   <div>
@@ -145,14 +153,14 @@ Apache CXF -- WS-Policy Framework Overvi
 
 <p>AssertionBuilder implementations are loaded dynamically and are automatically registered with the AssertionBuilderRegistry, which is available as a Bus extension. Currently, CXF supports AssertionBuilder and Assertion implementations for the following assertion types:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
 {http://schemas.xmlsoap.org/ws/2005/02/rm/policy}RMAssertion
 {http://www.w3.org/2007/01/addressing/metadata}Addressing
 {http://www.w3.org/2007/01/addressing/metadata}AnonymousResponses
 {http://www.w3.org/2007/01/addressing/metadata}NonAnonymousResponses
 {http://cxf.apache.org/transports/http/configuration}client
 {http://cxf.apache.org/transports/http/configuration}server
-</pre>
+]]></script>
 </div></div>
 <p>along with the <a shape="rect" href="ws-securitypolicy.html" title="WS-SecurityPolicy">WS-SecurityPolicy</a> defined assertions.</p>
 
@@ -162,21 +170,21 @@ Apache CXF -- WS-Policy Framework Overvi
 
 <p>This API is used to automatically engage interceptors required to support domain specific assertions at runtime, thus simplifying interceptor configuration a lot.</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">public</span> <span class="code-keyword">interface</span> PolicyInterceptorProvider <span class="code-keyword">extends</span> InterceptorProvider {
-  <span class="code-comment">// <span class="code-keyword">return</span> the schema types of the asssertions that can be supported
-</span>  Collection&lt;QName&gt; getAssertionTypes()
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+public interface PolicyInterceptorProvider extends InterceptorProvider {
+  // return the schema types of the asssertions that can be supported
+  Collection&lt;QName&gt; getAssertionTypes()
 }
-</pre>
+]]></script>
 </div></div>
 <p>Currently, CXF supports PolicyInterceptorProvider implementations for the following assertion types:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
 {http://schemas.xmlsoap.org/ws/2005/02/rm/policy}RMAssertion
 {http://www.w3.org/2007/01/addressing/metadata}Addressing
 {http://www.w3.org/2007/01/addressing/metadata}AnonymousResponses
 {http://www.w3.org/2007/01/addressing/metadata}NonAnonymousResponses
-</pre>
+]]></script>
 </div></div>
 <p>along with the <a shape="rect" href="ws-securitypolicy.html" title="WS-SecurityPolicy">WS-SecurityPolicy</a> defined assertions.</p>
 
@@ -190,16 +198,16 @@ Apache CXF -- WS-Policy Framework Overvi
 
 <p>Like most other CXF features, the policy framework is itself largely interceptor based. Thus, most interaction with the framework is indirect through the Message object: Policy interceptors make AssertionInfo objects (stateful representations of assertions) available to subsequently executing, policy-aware interceptors by inserting them into the Message object. Extracting the AssertionInfo objects from the Message allows interceptors to perform steps 1. and 2. above: </p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">import</span> org.apache.neethi.Assertion;
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+import org.apache.neethi.Assertion;
 
-<span class="code-keyword">public</span> class AssertionInfo {
+public class AssertionInfo {
   ...
-  <span class="code-keyword">public</span> <span class="code-object">boolean</span> isAsserted() {...}
-  <span class="code-keyword">public</span> void setAsserted(<span class="code-object">boolean</span> asserted) {...}
-  <span class="code-keyword">public</span> Assertion getAssertion() {...}
+  public boolean isAsserted() {...}
+  public void setAsserted(boolean asserted) {...}
+  public Assertion getAssertion() {...}
 }
-</pre>
+]]></script>
 </div></div>
 
 <p>The WS-Addressing and WS-RM interceptors are examples for this style of intercation.  </p>
@@ -210,8 +218,8 @@ And Destinations cannot normally exhibit
 
 <p>Their interaction with the policy framework therefore typically involves the PolicyEngine through which they obtain the effective policy for the underlying endpoint (for step 1.):</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java"> 
-<span class="code-keyword">public</span> <span class="code-keyword">interface</span> PolicyEngine {
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ 
+public interface PolicyEngine {
     ...
     EndpointPolicy getClientEndpointPolicy(EndpointInfo ei, 
         Conduit conduit);    
@@ -219,23 +227,23 @@ And Destinations cannot normally exhibit
         Destination destination); 
 }
 
-<span class="code-keyword">public</span> <span class="code-keyword">interface</span> EndpointPolicy {
+public interface EndpointPolicy {
     ...
     Policy getPolicy(); 
     Collection&lt;Assertion&gt; getChosenAlternative();
 }
-</pre>
+]]></script>
 </div></div>
 
 <p>To perform step 2. they implement the Assertor interface (namely its assertMessage method):</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">public</span> class Assertor {
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+public class Assertor {
   ...
-  <span class="code-keyword">public</span> <span class="code-object">boolean</span> canAssert(QName name);
-  <span class="code-keyword">public</span> void assertMessage(Message message);
+  public boolean canAssert(QName name);
+  public void assertMessage(Message message);
 }
-</pre>
+]]></script>
 </div></div> 
 
 <p>An example for policy aware conduits and destinations in CXF are the HTTP conduit and destination. They do support assertions of element type HTTPClientPolicy and HTTPServerPolicy respectively.</p></div>

Modified: websites/production/cxf/content/docs/ws-policy.html
==============================================================================
--- websites/production/cxf/content/docs/ws-policy.html (original)
+++ websites/production/cxf/content/docs/ws-policy.html Mon Jun 24 17:10:51 2013
@@ -25,6 +25,8 @@
 <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
 <meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source">
 <meta name="description" content="Apache CXF, Services Framework - WS-Policy">
+
+
     <title>
 Apache CXF -- WS-Policy
     </title>
@@ -42,19 +44,15 @@ Apache CXF -- WS-Policy
     <td id="cell-1-0">&nbsp;</td>
     <td id="cell-1-1">&nbsp;</td>
     <td id="cell-1-2">
-      <div style="padding: 5px;">
-        <div id="banner">
-          <!-- Banner -->
-<div id="banner-content">
+      <!-- Banner -->
+<div class="banner" id="banner"><p>
 <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap>
 <a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a>
 </td><td align="right" colspan="1" nowrap>
 <a shape="rect" href="http://www.apache.org/" title="The Apache Sofware Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a>
 </td></tr></table>
-</div>
-          <!-- Banner -->
-        </div>
-      </div>
+</p></div>
+      <!-- Banner -->
       <div id="top-menu">
         <table border="0" cellpadding="1" cellspacing="0" width="100%">
           <tr>
@@ -94,7 +92,7 @@ Apache CXF -- WS-Policy
 
 
 <hr>
-<ul class="alternate" type="square"><li>Search
+<ul class="alternate" type="square"><li>Search<br clear="none">
 
 <form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
   <div>

Modified: websites/production/cxf/content/docs/ws-reliablemessaging.html
==============================================================================
--- websites/production/cxf/content/docs/ws-reliablemessaging.html (original)
+++ websites/production/cxf/content/docs/ws-reliablemessaging.html Mon Jun 24 17:10:51 2013
@@ -25,6 +25,8 @@
 <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
 <meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source">
 <meta name="description" content="Apache CXF, Services Framework - WS-ReliableMessaging">
+
+
     <title>
 Apache CXF -- WS-ReliableMessaging
     </title>
@@ -42,19 +44,15 @@ Apache CXF -- WS-ReliableMessaging
     <td id="cell-1-0">&nbsp;</td>
     <td id="cell-1-1">&nbsp;</td>
     <td id="cell-1-2">
-      <div style="padding: 5px;">
-        <div id="banner">
-          <!-- Banner -->
-<div id="banner-content">
+      <!-- Banner -->
+<div class="banner" id="banner"><p>
 <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap>
 <a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a>
 </td><td align="right" colspan="1" nowrap>
 <a shape="rect" href="http://www.apache.org/" title="The Apache Sofware Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a>
 </td></tr></table>
-</div>
-          <!-- Banner -->
-        </div>
-      </div>
+</p></div>
+      <!-- Banner -->
       <div id="top-menu">
         <table border="0" cellpadding="1" cellspacing="0" width="100%">
           <tr>
@@ -94,7 +92,7 @@ Apache CXF -- WS-ReliableMessaging
 
 
 <hr>
-<ul class="alternate" type="square"><li>Search
+<ul class="alternate" type="square"><li>Search<br clear="none">
 
 <form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
   <div>

Modified: websites/production/cxf/content/docs/ws-secureconversation.html
==============================================================================
--- websites/production/cxf/content/docs/ws-secureconversation.html (original)
+++ websites/production/cxf/content/docs/ws-secureconversation.html Mon Jun 24 17:10:51 2013
@@ -25,6 +25,18 @@
 <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
 <meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source">
 <meta name="description" content="Apache CXF, Services Framework - WS-SecureConversation">
+
+  <link href='http://cxf.apache.org/resources/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' />
+  <link href='http://cxf.apache.org/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
+  
+  <script type="text/javascript">
+  SyntaxHighlighter.defaults['toolbar'] = false;
+  SyntaxHighlighter.all();
+  </script>
+ 
     <title>
 Apache CXF -- WS-SecureConversation
     </title>
@@ -42,19 +54,15 @@ Apache CXF -- WS-SecureConversation
     <td id="cell-1-0">&nbsp;</td>
     <td id="cell-1-1">&nbsp;</td>
     <td id="cell-1-2">
-      <div style="padding: 5px;">
-        <div id="banner">
-          <!-- Banner -->
-<div id="banner-content">
+      <!-- Banner -->
+<div class="banner" id="banner"><p>
 <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap>
 <a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a>
 </td><td align="right" colspan="1" nowrap>
 <a shape="rect" href="http://www.apache.org/" title="The Apache Sofware Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a>
 </td></tr></table>
-</div>
-          <!-- Banner -->
-        </div>
-      </div>
+</p></div>
+      <!-- Banner -->
       <div id="top-menu">
         <table border="0" cellpadding="1" cellspacing="0" width="100%">
           <tr>
@@ -94,7 +102,7 @@ Apache CXF -- WS-SecureConversation
 
 
 <hr>
-<ul class="alternate" type="square"><li>Search
+<ul class="alternate" type="square"><li>Search<br clear="none">
 
 <form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
   <div>
@@ -138,40 +146,40 @@ Apache CXF -- WS-SecureConversation
 <p>Configuring the WS-SecurityPolicy properties for WS-SecureConversation works exactly like the configuration for straight WS-SecurityPolicy.  The only difference is that there needs to be a way to specify which properties are intended for the bootstrap policy in the SecureConversationToken and which are intended for the actual service policy.    To accomplish this, properties intended for the SecureConversationToken bootstrap policy are appended with ".sct".    For example:</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
-&lt;jaxws:client name=<span class="code-quote">"{http://InteropBaseAddress/interop}XDC-SEES_IPingService"</span> 
-    createdFromAPI=<span class="code-quote">"true"</span>&gt;
-    <span class="code-tag">&lt;jaxws:properties&gt;</span>
-        <span class="code-tag"><span class="code-comment">&lt;!-- properties for the external policy --&gt;</span></span>
-        <span class="code-tag">&lt;entry key=<span class="code-quote">"ws-security.username"</span> value=<span class="code-quote">"abcd"</span>/&gt;</span>
-
-        <span class="code-tag"><span class="code-comment">&lt;!-- properties for the SecureConversationToken bootstrap policy --&gt;</span></span>
-        <span class="code-tag">&lt;entry key=<span class="code-quote">"ws-security.username.sct"</span> value=<span class="code-quote">"efgh"</span>/&gt;</span>
-        &lt;entry key=<span class="code-quote">"ws-security.callback-handler.sct"</span> 
-               value=<span class="code-quote">"interop.client.KeystorePasswordCallback"</span>/&gt;
-        &lt;entry key=<span class="code-quote">"ws-security.encryption.properties.sct"</span> 
-               value=<span class="code-quote">"etc/bob.properties"</span>/&gt; 
-    <span class="code-tag">&lt;/jaxws:properties&gt;</span>
-<span class="code-tag">&lt;/jaxws:client&gt;</span>   
-</pre>
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+&lt;jaxws:client name="{http://InteropBaseAddress/interop}XDC-SEES_IPingService" 
+    createdFromAPI="true"&gt;
+    &lt;jaxws:properties&gt;
+        &lt;!-- properties for the external policy --&gt;
+        &lt;entry key="ws-security.username" value="abcd"/&gt;
+
+        &lt;!-- properties for the SecureConversationToken bootstrap policy --&gt;
+        &lt;entry key="ws-security.username.sct" value="efgh"/&gt;
+        &lt;entry key="ws-security.callback-handler.sct" 
+               value="interop.client.KeystorePasswordCallback"/&gt;
+        &lt;entry key="ws-security.encryption.properties.sct" 
+               value="etc/bob.properties"/&gt; 
+    &lt;/jaxws:properties&gt;
+&lt;/jaxws:client&gt;   
+]]></script>
 </div></div>
 
 <p>Via the Java API, use code similar to the following:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 org.apache.cxf.endpoint.Client client;
-client.getRequestContext().put(<span class="code-quote">"ws-security.username.sct"</span>, username);
-client.getRequestContext().put(<span class="code-quote">"ws-security.password.sct"</span>, password);
-</pre>
+client.getRequestContext().put("ws-security.username.sct", username);
+client.getRequestContext().put("ws-security.password.sct", password);
+]]></script>
 </div></div>
 
 <p>Via the Java API, use code similar to the following:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 org.apache.cxf.endpoint.Client client;
-client.getRequestContext().put(<span class="code-quote">"ws-security.username.sct"</span>, username);
-client.getRequestContext().put(<span class="code-quote">"ws-security.password.sct"</span>, password);
-</pre>
+client.getRequestContext().put("ws-security.username.sct", username);
+client.getRequestContext().put("ws-security.password.sct", password);
+]]></script>
 </div></div>
 
 <p><b>Note:</b> In most common cases of WS-SecureConversation, you won't need any configuration for the service policy.  All of the "hard" stuff is used for the bootstrap policy and the service provides new keys for use by the service policy.   This keeps the communication with the service itself as simple and efficient as possible.</p>

Modified: websites/production/cxf/content/docs/ws-security.html
==============================================================================
--- websites/production/cxf/content/docs/ws-security.html (original)
+++ websites/production/cxf/content/docs/ws-security.html Mon Jun 24 17:10:51 2013
@@ -26,7 +26,17 @@
 <meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source">
 <meta name="description" content="Apache CXF, Services Framework - WS-Security">
 
-
+  <link href='http://cxf.apache.org/resources/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' />
+  <link href='http://cxf.apache.org/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
+  
+  <script type="text/javascript">
+  SyntaxHighlighter.defaults['toolbar'] = false;
+  SyntaxHighlighter.all();
+  </script>
+ 
     <title>
 Apache CXF -- WS-Security
     </title>
@@ -44,19 +54,15 @@ Apache CXF -- WS-Security
     <td id="cell-1-0">&nbsp;</td>
     <td id="cell-1-1">&nbsp;</td>
     <td id="cell-1-2">
-      <div style="padding: 5px;">
-        <div id="banner">
-          <!-- Banner -->
-<div id="banner-content">
+      <!-- Banner -->
+<div class="banner" id="banner"><p>
 <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap>
 <a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a>
 </td><td align="right" colspan="1" nowrap>
 <a shape="rect" href="http://www.apache.org/" title="The Apache Sofware Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a>
 </td></tr></table>
-</div>
-          <!-- Banner -->
-        </div>
-      </div>
+</p></div>
+      <!-- Banner -->
       <div id="top-menu">
         <table border="0" cellpadding="1" cellspacing="0" width="100%">
           <tr>
@@ -96,7 +102,7 @@ Apache CXF -- WS-Security
 
 
 <hr>
-<ul class="alternate" type="square"><li>Search
+<ul class="alternate" type="square"><li>Search<br clear="none">
 
 <form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
   <div>
@@ -156,94 +162,94 @@ Apache CXF -- WS-Security
 
 <p>On the Server side, you'll want to add the interceptors to your CXF Endpoint. If you're publishing your service using the JAX-WS APIs, you can get your CXF endpoint like this:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">import</span> org.apache.cxf.endpoint.Endpoint;
-<span class="code-keyword">import</span> org.apache.cxf.jaxws.EndpointImpl;
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+import org.apache.cxf.endpoint.Endpoint;
+import org.apache.cxf.jaxws.EndpointImpl;
 
-EndpointImpl jaxWsEndpoint = (EndpointImpl) Endpoint.publish(<span class="code-quote">"http:<span class="code-comment">//host/service"</span>, 
-</span>    myServiceImpl);
+EndpointImpl jaxWsEndpoint = (EndpointImpl) Endpoint.publish("http://host/service", 
+    myServiceImpl);
 Endpoint cxfEndpoint = jaxWsEndpoint.getServer().getEndpoint();
-</pre>
+]]></script>
 </div></div>
 <p>If you've used the (JaxWs)ServerFactoryBean, you can simply access it via the Server object:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">import</span> org.apache.cxf.endpoint.Endpoint;
-<span class="code-keyword">import</span> org.apache.cxf.endpoint.Server;
-<span class="code-keyword">import</span> org.apache.cxf.frontend.ServerFactoryBean;
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+import org.apache.cxf.endpoint.Endpoint;
+import org.apache.cxf.endpoint.Server;
+import org.apache.cxf.frontend.ServerFactoryBean;
 
 ServerFactoryBean factory = ...;
 ...
 Server server = factory.create();
 Endpoint cxfEndpoint = server.getEndpoint();
-</pre>
+]]></script>
 </div></div>
 <p>On the client side, you can obtain a reference to the CXF endpoint using the ClientProxy helper:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">import</span> org.apache.cxf.frontend.ClientProxy;
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+import org.apache.cxf.frontend.ClientProxy;
 ...
 
-GreeterService gs = <span class="code-keyword">new</span> GreeterService();
+GreeterService gs = new GreeterService();
 Greeter greeter = gs.getGreeterPort();
 ...
 org.apache.cxf.endpoint.Client client = ClientProxy.getClient(greeter);
 org.apache.cxf.endpoint.Endpoint cxfEndpoint = client.getEndpoint();
-</pre>
+]]></script>
 </div></div>
 <p><a shape="rect" name="WS-Security-addinterceptors"></a>Now you're ready to add the interceptors:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">import</span> org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor;
-<span class="code-keyword">import</span> org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor;
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+import org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor;
+import org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor;
 ...
 
-Map&lt;<span class="code-object">String</span>,<span class="code-object">Object</span>&gt; inProps= <span class="code-keyword">new</span> HashMap&lt;<span class="code-object">String</span>,<span class="code-object">Object</span>&gt;();
-... <span class="code-comment">// how to configure the properties is outlined below;
-</span>
-WSS4JInInterceptor wssIn = <span class="code-keyword">new</span> WSS4JInInterceptor(inProps);
+Map&lt;String,Object&gt; inProps= new HashMap&lt;String,Object&gt;();
+... // how to configure the properties is outlined below;
+
+WSS4JInInterceptor wssIn = new WSS4JInInterceptor(inProps);
 cxfEndpoint.getInInterceptors().add(wssIn);
 
-Map&lt;<span class="code-object">String</span>,<span class="code-object">Object</span>&gt; outProps = <span class="code-keyword">new</span> HashMap&lt;<span class="code-object">String</span>,<span class="code-object">Object</span>&gt;();
-... <span class="code-comment">// how to configure the properties is outlined below;
-</span>
-WSS4JOutInterceptor wssOut = <span class="code-keyword">new</span> WSS4JOutInterceptor(outProps);
+Map&lt;String,Object&gt; outProps = new HashMap&lt;String,Object&gt;();
+... // how to configure the properties is outlined below;
+
+WSS4JOutInterceptor wssOut = new WSS4JOutInterceptor(outProps);
 cxfEndpoint.getOutInterceptors().add(wssOut);
-</pre>
+]]></script>
 </div></div>
 
 <h1><a shape="rect" name="WS-Security-SpringXMLConfiguration"></a>Spring XML Configuration</h1>
 
 <p>If you're using Spring to build endpoints (e.g., web services running on a servlet container such as Tomcat), you can easily accomplish the above using your bean definitions instead.</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
-<span class="code-tag">&lt;import resource=<span class="code-quote">"classpath:META-INF/cxf/cxf.xml"</span> /&gt;</span>
-<span class="code-tag">&lt;import resource=<span class="code-quote">"classpath*:META-INF/cxf/cxf-extension-*.xml"</span> /&gt;</span>
-
-&lt;jaxws:endpoint id=<span class="code-quote">"myService"</span>
-   implementor=<span class="code-quote">"com.acme.MyServiceImpl"</span>
-   address=<span class="code-quote">"http://localhost:9001/MyService"</span>&gt;
-
-   &lt;bean id=<span class="code-quote">"myPasswordCallback"</span>
-      class=<span class="code-quote">"com.mycompany.webservice.ServerPasswordCallback"</span>/&gt;
-
-   <span class="code-tag">&lt;jaxws:inInterceptors&gt;</span>
-      <span class="code-tag">&lt;bean class=<span class="code-quote">"org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"</span>&gt;</span>
-         <span class="code-tag">&lt;constructor-arg&gt;</span>
-            <span class="code-tag">&lt;map&gt;</span>
-               <span class="code-tag">&lt;entry key=<span class="code-quote">"action"</span> value=<span class="code-quote">"UsernameToken"</span>/&gt;</span>
-               <span class="code-tag">&lt;entry key=<span class="code-quote">"passwordType"</span> value=<span class="code-quote">"PasswordDigest"</span>/&gt;</span>
-               <span class="code-tag">&lt;entry key=<span class="code-quote">"signaturePropFile"</span> value=<span class="code-quote">"..."</span>/&gt;</span>
-               <span class="code-tag">&lt;entry key=<span class="code-quote">"passwordCallbackRef"</span>&gt;</span>
-                  <span class="code-tag">&lt;ref bean=<span class="code-quote">"myPasswordCallback"</span>/&gt;</span>
-               <span class="code-tag">&lt;/entry&gt;</span>
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+&lt;import resource="classpath:META-INF/cxf/cxf.xml" /&gt;
+&lt;import resource="classpath*:META-INF/cxf/cxf-extension-*.xml" /&gt;
+
+&lt;jaxws:endpoint id="myService"
+   implementor="com.acme.MyServiceImpl"
+   address="http://localhost:9001/MyService"&gt;
+
+   &lt;bean id="myPasswordCallback"
+      class="com.mycompany.webservice.ServerPasswordCallback"/&gt;
+
+   &lt;jaxws:inInterceptors&gt;
+      &lt;bean class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"&gt;
+         &lt;constructor-arg&gt;
+            &lt;map&gt;
+               &lt;entry key="action" value="UsernameToken"/&gt;
+               &lt;entry key="passwordType" value="PasswordDigest"/&gt;
+               &lt;entry key="signaturePropFile" value="..."/&gt;
+               &lt;entry key="passwordCallbackRef"&gt;
+                  &lt;ref bean="myPasswordCallback"/&gt;
+               &lt;/entry&gt;
                ...
-            <span class="code-tag">&lt;/map&gt;</span>
-         <span class="code-tag">&lt;/constructor-arg&gt;</span>
-      <span class="code-tag">&lt;/bean&gt;</span>
-   <span class="code-tag">&lt;/jaxws:inInterceptors&gt;</span>
-<span class="code-tag">&lt;/jaxws:endpoint&gt;</span>
-</pre>
+            &lt;/map&gt;
+         &lt;/constructor-arg&gt;
+      &lt;/bean&gt;
+   &lt;/jaxws:inInterceptors&gt;
+&lt;/jaxws:endpoint&gt;
+]]></script>
 </div></div>
 
 <p>The entry keys and values given in the constructor-arg element above (action, signaturePropFile, etc.) map to the text strings in WSS4J's <a shape="rect" class="external-link" href="http://ws.apache.org/wss4j/apidocs/org/apache/ws/security/handler/WSHandlerConstants.html">WSHandlerConstants</a> and <a shape="rect" class="external-link" href="http://ws.apache.org/wss4j/apidocs/org/apache/ws/security/WSConstants.html">WSConstants</a> classes for the corresponding WSHandlerConstants.XXXXX and WSConstants.XXXX constants you see in the section below (also see the WSS4J configuration <a shape="rect" class="external-link" href="http://ws.apache.org/wss4j/config.html">page</a>).  So by viewing WSHandlerConstants, for example, you can see that the WSHandlerConstants.USERNAME_TOKEN value given below would need to be "UsernameToken" instead when doing Spring configuration.</p>
@@ -251,10 +257,10 @@ cxfEndpoint.getOutInterceptors().add(wss
 <p>If you want to avoid looking up the text keys for the WSHandlerConstants.XXXXX and WSConstants.XXXX constants, you can also use the Spring util namespace to reference static constants in your Spring context as shown below.</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
 &lt;beans
   ...
-  <span class="code-keyword">xmlns:util</span>=<span class="code-quote">"http://www.springframework.org/schema/util"</span>
+  xmlns:util="http://www.springframework.org/schema/util"
   ...
   xsi:schemaLocation="
         ...
@@ -263,22 +269,22 @@ cxfEndpoint.getOutInterceptors().add(wss
 
   ...
 
-  <span class="code-tag">&lt;bean class=<span class="code-quote">"org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"</span>&gt;</span>
-    <span class="code-tag">&lt;constructor-arg&gt;</span>
-      <span class="code-tag">&lt;map&gt;</span>
-        <span class="code-tag">&lt;entry value=<span class="code-quote">"UsernameToken"</span>&gt;</span>
-          <span class="code-tag">&lt;key&gt;</span>
+  &lt;bean class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"&gt;
+    &lt;constructor-arg&gt;
+      &lt;map&gt;
+        &lt;entry value="UsernameToken"&gt;
+          &lt;key&gt;
             &lt;util:constant 
-                static-field=<span class="code-quote">"org.apache.ws.security.handler.WSHandlerConstants.ACTION"</span>/&gt;
-          <span class="code-tag">&lt;/key&gt;</span>
-        <span class="code-tag">&lt;/entry&gt;</span>
+                static-field="org.apache.ws.security.handler.WSHandlerConstants.ACTION"/&gt;
+          &lt;/key&gt;
+        &lt;/entry&gt;
         ...
-      <span class="code-tag">&lt;/map&gt;</span>
-    <span class="code-tag">&lt;/constructor-arg&gt;</span>
-  <span class="code-tag">&lt;/bean&gt;</span>
+      &lt;/map&gt;
+    &lt;/constructor-arg&gt;
+  &lt;/bean&gt;
 
   ...  
-</pre>
+]]></script>
 </div></div>
 
 <h2><a shape="rect" name="WS-Security-AdditionalConfigurationOptions"></a>Additional Configuration Options</h2>
@@ -290,24 +296,24 @@ cxfEndpoint.getOutInterceptors().add(wss
 <p>As of CXF 2.2.8, the CryptoCoverageChecker interceptor allows one to validate signature and encryption coverage of message contents without migrating to a WS-SecurityPolicy based configuration.  The interceptor can support enforcement of signature and encryption coverage at both the element and content level (be aware that the combination of signature and content do not represent a valid combination of coverage type and coverage scope).  To configure this interceptor using the API, follow the example below.</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">import</span> org.apache.cxf.ws.security.wss4j.CryptoCoverageChecker;
-<span class="code-keyword">import</span> org.apache.cxf.ws.security.wss4j.CryptoCoverageChecker.XPathExpression;
-<span class="code-keyword">import</span> org.apache.cxf.ws.security.wss4j.CryptoCoverageUtil.CoverageScope;
-<span class="code-keyword">import</span> org.apache.cxf.ws.security.wss4j.CryptoCoverageUtil.CoverageType;
-
-Map&lt;<span class="code-object">String</span>, <span class="code-object">String</span>&gt; prefixes = <span class="code-keyword">new</span> HashMap&lt;<span class="code-object">String</span>, <span class="code-object">String</span>&gt;();
-        prefixes.put(<span class="code-quote">"ser"</span>, <span class="code-quote">"http:<span class="code-comment">//www.sdj.pl"</span>);
-</span>        prefixes.put(<span class="code-quote">"soap"</span>, <span class="code-quote">"http:<span class="code-comment">//schemas.xmlsoap.org/soap/envelope/"</span>);
-</span>
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+import org.apache.cxf.ws.security.wss4j.CryptoCoverageChecker;
+import org.apache.cxf.ws.security.wss4j.CryptoCoverageChecker.XPathExpression;
+import org.apache.cxf.ws.security.wss4j.CryptoCoverageUtil.CoverageScope;
+import org.apache.cxf.ws.security.wss4j.CryptoCoverageUtil.CoverageType;
+
+Map&lt;String, String&gt; prefixes = new HashMap&lt;String, String&gt;();
+        prefixes.put("ser", "http://www.sdj.pl");
+        prefixes.put("soap", "http://schemas.xmlsoap.org/soap/envelope/");
+
 List&lt;XPathExpression&gt; xpaths = Arrays.asList(
-    <span class="code-keyword">new</span> XPathExpression(<span class="code-quote">"<span class="code-comment">//ser:Header"</span>, CoverageType.SIGNED, 
-</span>        CoverageScope.ELEMENT),
-    <span class="code-keyword">new</span> XPathExpression(<span class="code-quote">"<span class="code-comment">//soap:Body"</span>, CoverageType.ENCRYPTED, 
-</span>        CoverageScope.CONTENT));
+    new XPathExpression("//ser:Header", CoverageType.SIGNED, 
+        CoverageScope.ELEMENT),
+    new XPathExpression("//soap:Body", CoverageType.ENCRYPTED, 
+        CoverageScope.CONTENT));
 
-CryptoCoverageChecker checker = <span class="code-keyword">new</span> CryptoCoverageChecker(prefixes, xpaths);
-</pre>
+CryptoCoverageChecker checker = new CryptoCoverageChecker(prefixes, xpaths);
+]]></script>
 </div></div>
 
 <p>The interceptor can also be configured in Spring using the conventional bean definition format.</p>
@@ -319,20 +325,20 @@ CryptoCoverageChecker checker = <span cl
 <p>The default configuation is that the SOAP Body, (WSU) Timestamp and WS-Addressing ReplyTo and FaultTo headers must be signed (if they exist in the message payload). This provides an out-of-the-box way of preventing XML Signature wrapping attacks. All that is required is that the DefaultCryptoCoverageChecker be added to the in-interceptor chain. For example:</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
-<span class="code-tag">&lt;jaxws:inInterceptors&gt;</span>
-    <span class="code-tag">&lt;bean class=<span class="code-quote">"org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"</span>&gt;</span>
-        <span class="code-tag">&lt;constructor-arg&gt;</span>
-            <span class="code-tag">&lt;map&gt;</span>
-                <span class="code-tag">&lt;entry key=<span class="code-quote">"action"</span> value=<span class="code-quote">"Signature Timestamp"</span>/&gt;</span>
-                <span class="code-tag">&lt;entry key=<span class="code-quote">"signaturePropFile"</span> value=<span class="code-quote">"..."</span>/&gt;</span>
-                <span class="code-tag">&lt;entry key=<span class="code-quote">"passwordCallbackClass"</span>value=<span class="code-quote">"..."</span>/&gt;</span>
-           <span class="code-tag">&lt;/map&gt;</span>
-        <span class="code-tag">&lt;/constructor-arg&gt;</span>
-    <span class="code-tag">&lt;/bean&gt;</span>
-    <span class="code-tag">&lt;bean class=<span class="code-quote">"org.apache.cxf.ws.security.wss4j.DefaultCryptoCoverageChecker"</span>/&gt;</span>
-<span class="code-tag">&lt;/jaxws:inInterceptors&gt;</span>
-</pre>
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+&lt;jaxws:inInterceptors&gt;
+    &lt;bean class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"&gt;
+        &lt;constructor-arg&gt;
+            &lt;map&gt;
+                &lt;entry key="action" value="Signature Timestamp"/&gt;
+                &lt;entry key="signaturePropFile" value="..."/&gt;
+                &lt;entry key="passwordCallbackClass"value="..."/&gt;
+           &lt;/map&gt;
+        &lt;/constructor-arg&gt;
+    &lt;/bean&gt;
+    &lt;bean class="org.apache.cxf.ws.security.wss4j.DefaultCryptoCoverageChecker"/&gt;
+&lt;/jaxws:inInterceptors&gt;
+]]></script>
 </div></div>
 
 <p>As of CXF 2.5.11, 2.6.8 and 2.7.5, it is possible to only check that a received message meets cryptographic requirements via the CryptoCoverageChecker if it is not a fault. This is useful in the scenario where a client is using the CryptoCoverageChecker interceptor to verify security requirements from a service response. In this scenario, you may want to get the original service Fault rather than have the CryptoCoverageChecker throw an exception if a Fault message from the service isn't secured. To enable this behaviour, then set the "checkFaults" boolean property on CryptoCoverageChecker to "false".</p>
@@ -342,30 +348,30 @@ CryptoCoverageChecker checker = <span cl
 <p>As of CXF 2.0.10 and 2.1.4, you can specify custom WSS4J Processor configurations on the WSS4JInInterceptor.  To activate this configuration option, one provides a non-WSS4J defined property, wss4j.processor.map, to the WSS4JInInterceptor as shown in the following Spring example.  The same configuration can be achieved through the API as well.  The key value is an XML qualified name of the WS-Security header element to process with the given processor implementation.  The entry values can be a String representing a class name of the processor to instantiate, an Object implementing Processor, or null to disable processing of the given WS-Security header element.</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
-<span class="code-tag">&lt;bean class=<span class="code-quote">"org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"</span>&gt;</span>
-  <span class="code-tag">&lt;constructor-arg&gt;</span>
-    <span class="code-tag">&lt;map&gt;</span>
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+&lt;bean class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor"&gt;
+  &lt;constructor-arg&gt;
+    &lt;map&gt;
       ...
       &lt;!-- This reconfigures the processor implementation that WSS4j uses to 
                process a WS-Security Signature element. --&gt;
-      <span class="code-tag">&lt;entry key=<span class="code-quote">"wss4j.processor.map"</span>&gt;</span>
-        <span class="code-tag">&lt;map key-type=<span class="code-quote">"javax.xml.namespace.QName"</span>&gt;</span>
-          <span class="code-tag">&lt;entry value=<span class="code-quote">"my.class"</span>&gt;</span>
-            <span class="code-tag">&lt;key&gt;</span>
-              <span class="code-tag">&lt;bean class=<span class="code-quote">"javax.xml.namespace.QName"</span>&gt;</span>
-                <span class="code-tag">&lt;constructor-arg value=<span class="code-quote">"http://www.w3.org/2000/09/xmldsig#"</span>/&gt;</span>
-                <span class="code-tag">&lt;constructor-arg value=<span class="code-quote">"Signature"</span>/&gt;</span>
-              <span class="code-tag">&lt;/bean&gt;</span>
-            <span class="code-tag">&lt;/key&gt;</span>
-          <span class="code-tag">&lt;/entry&gt;</span>
-        <span class="code-tag">&lt;/map&gt;</span>
-      <span class="code-tag">&lt;/entry&gt;</span>
+      &lt;entry key="wss4j.processor.map"&gt;
+        &lt;map key-type="javax.xml.namespace.QName"&gt;
+          &lt;entry value="my.class"&gt;
+            &lt;key&gt;
+              &lt;bean class="javax.xml.namespace.QName"&gt;
+                &lt;constructor-arg value="http://www.w3.org/2000/09/xmldsig#"/&gt;
+                &lt;constructor-arg value="Signature"/&gt;
+              &lt;/bean&gt;
+            &lt;/key&gt;
+          &lt;/entry&gt;
+        &lt;/map&gt;
+      &lt;/entry&gt;
       ...
-    <span class="code-tag">&lt;/map&gt;</span>
-  <span class="code-tag">&lt;/constructor-arg&gt;</span>
-<span class="code-tag">&lt;/bean&gt;</span>
-</pre>
+    &lt;/map&gt;
+  &lt;/constructor-arg&gt;
+&lt;/bean&gt;
+]]></script>
 </div></div>
 
 <h3><a shape="rect" name="WS-Security-CustomActions"></a>Custom Actions</h3>
@@ -373,22 +379,22 @@ CryptoCoverageChecker checker = <span cl
 <p>As of CXF 2.2.6, you can specify custom WSS4J Action configurations on the WSS4JOutInterceptor.  To activate this configuration option, one provides a non-WSS4J defined property, wss4j.action.map, to the WSS4JOutInterceptor as shown in the following Spring example.  The same configuration can be achieved through the API as well.  The key value is an integer representing the WSS4J action identifier.  The entry values can be a String representing a class name of the action to instantiate or an Object implementing Action.  This configuration option allows you to override built-in action implementations or add your own.</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
-<span class="code-tag">&lt;bean class=<span class="code-quote">"org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor"</span>&gt;</span>
-  <span class="code-tag">&lt;constructor-arg&gt;</span>
-    <span class="code-tag">&lt;map&gt;</span>
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+&lt;bean class="org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor"&gt;
+  &lt;constructor-arg&gt;
+    &lt;map&gt;
       ...
       &lt;!-- Redefines the action for SAMLTokenSigned 
                to use a custom implementation.  --&gt;
-      <span class="code-tag">&lt;entry key=<span class="code-quote">"wss4j.action.map"</span>&gt;</span>
-        <span class="code-tag">&lt;map key-type=<span class="code-quote">"java.lang.Integer"</span> value-type=<span class="code-quote">"java.lang.Object"</span>&gt;</span>
-          <span class="code-tag">&lt;entry key=<span class="code-quote">"0x10"</span> value-ref=<span class="code-quote">"mySamlTokenSignedAction"</span>/&gt;</span>
-        <span class="code-tag">&lt;/map&gt;</span>
-      <span class="code-tag">&lt;/entry&gt;</span>      ...
-    <span class="code-tag">&lt;/map&gt;</span>
-  <span class="code-tag">&lt;/constructor-arg&gt;</span>
-<span class="code-tag">&lt;/bean&gt;</span>
-</pre>
+      &lt;entry key="wss4j.action.map"&gt;
+        &lt;map key-type="java.lang.Integer" value-type="java.lang.Object"&gt;
+          &lt;entry key="0x10" value-ref="mySamlTokenSignedAction"/&gt;
+        &lt;/map&gt;
+      &lt;/entry&gt;      ...
+    &lt;/map&gt;
+  &lt;/constructor-arg&gt;
+&lt;/bean&gt;
+]]></script>
 </div></div>
 
 <p>For the case that adding new custom action, if the new key int number is 12345, you must also specify new action name as string "12345".</p>
@@ -406,102 +412,102 @@ CryptoCoverageChecker checker = <span cl
 
 <p>For the server side, you'll want to set up the following properties on your WSS4JInInterceptor (see <a shape="rect" href="#WS-Security-addinterceptors">above</a> for code sample):</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 inProps.put(WSHandlerConstants.ACTION, WSHandlerConstants.USERNAME_TOKEN);
-<span class="code-comment">// Password type : plain text
-</span>inProps.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_TEXT);
-<span class="code-comment">// <span class="code-keyword">for</span> hashed password use:
-</span><span class="code-comment">//properties.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_DIGEST);
-</span><span class="code-comment">// Callback used to retrieve password <span class="code-keyword">for</span> given user.
-</span>inProps.put(WSHandlerConstants.PW_CALLBACK_CLASS, 
+// Password type : plain text
+inProps.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_TEXT);
+// for hashed password use:
+//properties.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_DIGEST);
+// Callback used to retrieve password for given user.
+inProps.put(WSHandlerConstants.PW_CALLBACK_CLASS, 
     ServerPasswordHandler.class.getName());
-</pre>
+]]></script>
 </div></div>
 
 <p>The password callback class allows you to retrieve the password for a given user so that WS-Security can determine if they're authorized. Here is a small example:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">import</span> java.io.IOException;
-<span class="code-keyword">import</span> javax.security.auth.callback.Callback;
-<span class="code-keyword">import</span> javax.security.auth.callback.CallbackHandler;
-<span class="code-keyword">import</span> javax.security.auth.callback.UnsupportedCallbackException;
-<span class="code-keyword">import</span> org.apache.ws.security.WSPasswordCallback;
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+import java.io.IOException;
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+import org.apache.ws.security.WSPasswordCallback;
 
-<span class="code-keyword">public</span> class ServerPasswordCallback <span class="code-keyword">implements</span> CallbackHandler {
+public class ServerPasswordCallback implements CallbackHandler {
 
-    <span class="code-keyword">public</span> void handle(Callback[] callbacks) <span class="code-keyword">throws</span> IOException, 
+    public void handle(Callback[] callbacks) throws IOException, 
         UnsupportedCallbackException {
 
         WSPasswordCallback pc = (WSPasswordCallback) callbacks[0];
 
-        <span class="code-keyword">if</span> (pc.getIdentifier().equals(<span class="code-quote">"joe"</span>)) {
-            <span class="code-comment">// set the password on the callback. This will be compared to the
-</span>            <span class="code-comment">// password which was sent from the client.
-</span>            pc.setPassword(<span class="code-quote">"password"</span>);
+        if (pc.getIdentifier().equals("joe")) {
+            // set the password on the callback. This will be compared to the
+            // password which was sent from the client.
+            pc.setPassword("password");
         }
     }
 
 }
-</pre>
+]]></script>
 </div></div>
 <p>Note that for up to and including CXF 2.3.x, the password validation of the special case of a plain-text password (or any other yet unknown  password type) is delegated to the callback  class, see <a shape="rect" class="external-link" href="http://ws.apache.org/wss4j/apidocs/org/apache/ws/security/processor/UsernameTokenProcessor.html#handleUsernameToken(org.w3c.dom.Element,%20javax.security.auth.callback.CallbackHandler)">org.apache.ws.security.processor.UsernameTokenProcessor#handleUsernameToken() method javadoc</a> of the <a shape="rect" class="external-link" href="http://ws.apache.org/wss4j/">WSS4J</a> project. In that case, the ServerPasswordCallback should be something like the following one:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">public</span> class ServerPasswordCallback <span class="code-keyword">implements</span> CallbackHandler {
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+public class ServerPasswordCallback implements CallbackHandler {
 
-    <span class="code-keyword">public</span> void handle(Callback[] callbacks) <span class="code-keyword">throws</span> IOException, 
+    public void handle(Callback[] callbacks) throws IOException, 
         UnsupportedCallbackException {
 
         WSPasswordCallback pc = (WSPasswordCallback) callbacks[0];
 
-        <span class="code-keyword">if</span> (pc.getIdentifer().equals(<span class="code-quote">"joe"</span>) {
-           <span class="code-keyword">if</span> (!pc.getPassword().equals(<span class="code-quote">"password"</span>)) {
-                <span class="code-keyword">throw</span> <span class="code-keyword">new</span> IOException(<span class="code-quote">"wrong password"</span>);
+        if (pc.getIdentifer().equals("joe") {
+           if (!pc.getPassword().equals("password")) {
+                throw new IOException("wrong password");
            }
         }
     }
 
 }
-</pre>
+]]></script>
 </div></div>
 <p>For CXF 2.4 onwards, the callback handler supplies the password for all cases, and the validation is done internally (but can be configured). See <a shape="rect" class="external-link" href="http://coheigea.blogspot.com/2011/02/usernametoken-processing-changes-in.html" rel="nofollow">here</a> for more information.<br clear="none">
 On the Client side you'll want to configure the WSS4J outgoing properties:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 outProps.put(WSHandlerConstants.ACTION, WSHandlerConstants.USERNAME_TOKEN);
-<span class="code-comment">// Specify our username
-</span>outProps.put(WSHandlerConstants.USER, <span class="code-quote">"joe"</span>);
-<span class="code-comment">// Password type : plain text
-</span>outProps.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_TEXT);
-<span class="code-comment">// <span class="code-keyword">for</span> hashed password use:
-</span><span class="code-comment">//properties.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_DIGEST);
-</span><span class="code-comment">// Callback used to retrieve password <span class="code-keyword">for</span> given user.
-</span>outProps.put(WSHandlerConstants.PW_CALLBACK_CLASS, 
+// Specify our username
+outProps.put(WSHandlerConstants.USER, "joe");
+// Password type : plain text
+outProps.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_TEXT);
+// for hashed password use:
+//properties.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_DIGEST);
+// Callback used to retrieve password for given user.
+outProps.put(WSHandlerConstants.PW_CALLBACK_CLASS, 
     ClientPasswordHandler.class.getName());
-</pre>
+]]></script>
 </div></div>
 <p>Once again we're using a password callback, except this time instead of specifying our password on the server side, we're specifying the password we want sent with the message. This is so we don't have to store our password in our configuration file.</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-<span class="code-keyword">import</span> java.io.IOException;
-<span class="code-keyword">import</span> javax.security.auth.callback.Callback;
-<span class="code-keyword">import</span> javax.security.auth.callback.CallbackHandler;
-<span class="code-keyword">import</span> javax.security.auth.callback.UnsupportedCallbackException;
-<span class="code-keyword">import</span> org.apache.ws.security.WSPasswordCallback;
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+import java.io.IOException;
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+import org.apache.ws.security.WSPasswordCallback;
 
-<span class="code-keyword">public</span> class ClientPasswordCallback <span class="code-keyword">implements</span> CallbackHandler {
+public class ClientPasswordCallback implements CallbackHandler {
 
-    <span class="code-keyword">public</span> void handle(Callback[] callbacks) <span class="code-keyword">throws</span> IOException, 
+    public void handle(Callback[] callbacks) throws IOException, 
         UnsupportedCallbackException {
 
         WSPasswordCallback pc = (WSPasswordCallback) callbacks[0];
 
-        <span class="code-comment">// set the password <span class="code-keyword">for</span> our message.
-</span>        pc.setPassword(<span class="code-quote">"password"</span>);
+        // set the password for our message.
+        pc.setPassword("password");
     }
 
 }
-</pre>
+]]></script>
 </div></div>
 
 <p>In the case of multiple users with different passwords, use the  <a shape="rect" class="external-link" href="http://ws.apache.org/wss4j/apidocs/org/apache/ws/security/WSPasswordCallback.html">WSPasswordCallback</a>'s getIdentifier() method to obtain the username of the current SOAP request.</p>
@@ -519,33 +525,33 @@ outProps.put(WSHandlerConstants.ACTION, 
 <p>1. Creating private key with given alias and password like "myAlias"/"myAliasPassword" in keystore (protected by password for<br clear="none">
 security reasons)</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 keytool -genkey -alias myAlias -keypass myAliasPassword -keystore \ 
-  privatestore.jks -storepass keyStorePassword -dname <span class="code-quote">"cn=myAlias"</span> -keyalg RSA
-</pre>
+  privatestore.jks -storepass keyStorePassword -dname "cn=myAlias" -keyalg RSA
+]]></script>
 </div></div>
 <p>The alias is simply a way to identify the key pair. In this instance we are using the RSA algorithm.</p>
 
 <p>2. Self-sign our certificate (in production environment this will be done by a company like Verisign).</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 keytool -selfcert -alias myAlias -keystore privatestore.jks \ 
     -storepass keyStorePassword -keypass myAliasPassword
-</pre>
+]]></script>
 </div></div>
 <p>3. Export the public key from our private keystore to file named key.rsa</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 keytool -export -alias myAlias -file key.rsa -keystore privatestore.jks \ 
     -storepass keyStorePassword
-</pre>
+]]></script>
 </div></div>
 <p>4. Import the public key to new keystore:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-keytool -<span class="code-keyword">import</span> -alias myAlias  -file key.rsa -keystore publicstore.jks \ 
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+keytool -import -alias myAlias  -file key.rsa -keystore publicstore.jks \ 
     -storepass keyStorePassword
-</pre>
+]]></script>
 </div></div>
 <p>So now we have two keystores containing our keys - a public one (publicstore.jks) and a private one (privatestore.jks). Both of them have keystore password set to keyStorePass (this not recommended for production but ok for development) and alias set to myAlias. The file key.rsa can removed from filesystem, since it used only temporarily.  Storing keys in keystores is strongly advised because a keystore is protected by a password.</p>
 
@@ -561,53 +567,53 @@ keytool -<span class="code-keyword">impo
 
 <p>On the client side, our outgoing WS-Security properties will look like so (see <a shape="rect" href="#WS-Security-addinterceptors">above</a> for code sample):</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-outProps.put(WSHandlerConstants.ACTION, <span class="code-quote">"Signature"</span>);
-outProps.put(WSHandlerConstants.USER, <span class="code-quote">"myAlias"</span>);
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+outProps.put(WSHandlerConstants.ACTION, "Signature");
+outProps.put(WSHandlerConstants.USER, "myAlias");
 outProps.put(WSHandlerConstants.PW_CALLBACK_CLASS, 
     ClientCallbackHandler.class.getName());
-outProps.put(WSHandlerConstants.SIG_PROP_FILE, <span class="code-quote">"client_sign.properties"</span>);
-</pre>
+outProps.put(WSHandlerConstants.SIG_PROP_FILE, "client_sign.properties");
+]]></script>
 </div></div>
 
 <p>The USER that is specified is the key alias for the client.  The password callback class is responsible for providing that key's password.  </p>
 
 <div class="panelMacro"><table class="tipMacro"><colgroup span="1"><col span="1" width="24"><col span="1"></colgroup><tr><td colspan="1" rowspan="1" valign="top"><img align="middle" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" width="16" height="16" alt="" border="0"></td><td colspan="1" rowspan="1"><b>Tip</b><br clear="none">For X.509 support you will normally have multiple actions, e.g. Encryption with Signature.  For these cases, just space-separate the actions in the ACTION property as follows:
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 outProps.put(WSHandlerConstants.ACTION, 
-    WSHandlerConstants.TIMESTAMP + <span class="code-quote">" "</span> + 
-    WSHandlerConstants.SIGNATURE + <span class="code-quote">" "</span> + 
+    WSHandlerConstants.TIMESTAMP + " " + 
+    WSHandlerConstants.SIGNATURE + " " + 
     WSHandlerConstants.ENCRYPT);
-</pre>
+]]></script>
 </div></div>
 <p>Alternatively, you may space-separate the string literals you see above in the Spring configuration (e.g., "Signature Encrypt")</p></td></tr></table></div>
 
 <p>Our client_sign.properties file contains several settings to configure WSS4J:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
 org.apache.ws.security.crypto.merlin.keystore.type=jks
 org.apache.ws.security.crypto.merlin.keystore.password=keyStorePassword
 org.apache.ws.security.crypto.merlin.keystore.alias=myAlias
 org.apache.ws.security.crypto.merlin.keystore.file=client_keystore.jks
-</pre>
+]]></script>
 </div></div>
 <p>On the server side, we need to configure our incoming WSS4J interceptor to verify the signature using the Client's public key.</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-inProps.put(WSHandlerConstants.ACTION, <span class="code-quote">"Signature"</span>);
-inProps.put(WSHandlerConstants.SIG_PROP_FILE, <span class="code-quote">"server.properties"</span>);
-</pre>
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+inProps.put(WSHandlerConstants.ACTION, "Signature");
+inProps.put(WSHandlerConstants.SIG_PROP_FILE, "server.properties");
+]]></script>
 </div></div>
 <p>Our server_sign.properties file contains several settings to configure WSS4J:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
 org.apache.ws.security.crypto.provider=org.apache.ws.security.components.crypto.Merlin
 org.apache.ws.security.crypto.merlin.keystore.type=jks
 org.apache.ws.security.crypto.merlin.keystore.password=amex123
 org.apache.ws.security.crypto.merlin.keystore.file=server_keystore.jks
-</pre>
+]]></script>
 </div></div>
 
 <h3><a shape="rect" name="WS-Security-Encryption"></a>Encryption</h3>

Modified: websites/production/cxf/content/docs/ws-securitypolicy.html
==============================================================================
--- websites/production/cxf/content/docs/ws-securitypolicy.html (original)
+++ websites/production/cxf/content/docs/ws-securitypolicy.html Mon Jun 24 17:10:51 2013
@@ -25,6 +25,18 @@
 <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
 <meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source">
 <meta name="description" content="Apache CXF, Services Framework - WS-SecurityPolicy">
+
+  <link href='http://cxf.apache.org/resources/highlighter/styles/shCore.css' rel='stylesheet' type='text/css' />
+  <link href='http://cxf.apache.org/resources/highlighter/styles/shThemeCXF.css' rel='stylesheet' type='text/css' />
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shCore.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushJava.js' type='text/javascript'></script>
+  <script src='http://cxf.apache.org/resources/highlighter/scripts/shBrushXml.js' type='text/javascript'></script>
+  
+  <script type="text/javascript">
+  SyntaxHighlighter.defaults['toolbar'] = false;
+  SyntaxHighlighter.all();
+  </script>
+ 
     <title>
 Apache CXF -- WS-SecurityPolicy
     </title>
@@ -42,19 +54,15 @@ Apache CXF -- WS-SecurityPolicy
     <td id="cell-1-0">&nbsp;</td>
     <td id="cell-1-1">&nbsp;</td>
     <td id="cell-1-2">
-      <div style="padding: 5px;">
-        <div id="banner">
-          <!-- Banner -->
-<div id="banner-content">
+      <!-- Banner -->
+<div class="banner" id="banner"><p>
 <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap>
 <a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a>
 </td><td align="right" colspan="1" nowrap>
 <a shape="rect" href="http://www.apache.org/" title="The Apache Sofware Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a>
 </td></tr></table>
-</div>
-          <!-- Banner -->
-        </div>
-      </div>
+</p></div>
+      <!-- Banner -->
       <div id="top-menu">
         <table border="0" cellpadding="1" cellspacing="0" width="100%">
           <tr>
@@ -94,7 +102,7 @@ Apache CXF -- WS-SecurityPolicy
 
 
 <hr>
-<ul class="alternate" type="square"><li>Search
+<ul class="alternate" type="square"><li>Search<br clear="none">
 
 <form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
   <div>
@@ -193,66 +201,66 @@ Apache CXF -- WS-SecurityPolicy
 <p>The properties are easily configured as client or endpoint properties--use the former for the SOAP client, the latter for the web service provider.</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
-&lt;beans xmlns=<span class="code-quote">"http://www.springframework.org/schema/beans"</span>
-   <span class="code-keyword">xmlns:xsi</span>=<span class="code-quote">"http://www.w3.org/2001/XMLSchema-instance"</span>
-   <span class="code-keyword">xmlns:jaxws</span>=<span class="code-quote">"http://cxf.apache.org/jaxws"</span>
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+&lt;beans xmlns="http://www.springframework.org/schema/beans"
+   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xmlns:jaxws="http://cxf.apache.org/jaxws"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
    http://cxf.apache.org/jaxws
    http://cxf.apache.org/schemas/jaxws.xsd"&gt;
 
-   &lt;jaxws:client name=<span class="code-quote">"{http://cxf.apache.org}MyPortName"</span>
-      createdFromAPI=<span class="code-quote">"true"</span>&gt;
-      <span class="code-tag">&lt;jaxws:properties&gt;</span>
-         &lt;entry key=<span class="code-quote">"ws-security.callback-handler"</span>
-             value=<span class="code-quote">"interop.client.KeystorePasswordCallback"</span>/&gt;
-         &lt;entry key=<span class="code-quote">"ws-security.signature.properties"</span>
-             value=<span class="code-quote">"etc/client.properties"</span>/&gt;
-         &lt;entry key=<span class="code-quote">"ws-security.encryption.properties"</span>
-             value=<span class="code-quote">"etc/service.properties"</span>/&gt;
-         &lt;entry key=<span class="code-quote">"ws-security.encryption.username"</span>
-             value=<span class="code-quote">"servicekeyalias"</span>/&gt;
-      <span class="code-tag">&lt;/jaxws:properties&gt;</span>
-   <span class="code-tag">&lt;/jaxws:client&gt;</span>
+   &lt;jaxws:client name="{http://cxf.apache.org}MyPortName"
+      createdFromAPI="true"&gt;
+      &lt;jaxws:properties&gt;
+         &lt;entry key="ws-security.callback-handler"
+             value="interop.client.KeystorePasswordCallback"/&gt;
+         &lt;entry key="ws-security.signature.properties"
+             value="etc/client.properties"/&gt;
+         &lt;entry key="ws-security.encryption.properties"
+             value="etc/service.properties"/&gt;
+         &lt;entry key="ws-security.encryption.username"
+             value="servicekeyalias"/&gt;
+      &lt;/jaxws:properties&gt;
+   &lt;/jaxws:client&gt;
 
-<span class="code-tag">&lt;/beans&gt;</span>
-</pre>
+&lt;/beans&gt;
+]]></script>
 </div></div>
 
 <p>For the jaxws:client's <em>name</em> attribute above, use the namespace of the WSDL along with the <em>name</em> attribute of the desired wsdl:port element under the WSDL's service section. (See <a shape="rect" class="external-link" href="http://tinyurl.com/yatskw4" rel="nofollow">here</a> and <a shape="rect" class="external-link" href="http://tinyurl.com/y9e7rjf" rel="nofollow">here</a> for an example.)</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-xml">
-&lt;beans xmlns=<span class="code-quote">"http://www.springframework.org/schema/beans"</span>
-   <span class="code-keyword">xmlns:xsi</span>=<span class="code-quote">"http://www.w3.org/2001/XMLSchema-instance"</span>
-   <span class="code-keyword">xmlns:jaxws</span>=<span class="code-quote">"http://cxf.apache.org/jaxws"</span>
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+&lt;beans xmlns="http://www.springframework.org/schema/beans"
+   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xmlns:jaxws="http://cxf.apache.org/jaxws"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
    http://cxf.apache.org/jaxws
    http://cxf.apache.org/schemas/jaxws.xsd"&gt;
 
    &lt;jaxws:endpoint
-      id=<span class="code-quote">"MyService"</span>
-      address=<span class="code-quote">"https://localhost:9001/MyService"</span>
-      serviceName=<span class="code-quote">"interop:MyService"</span>
-      endpointName=<span class="code-quote">"interop:MyServiceEndpoint"</span>
-      implementor=<span class="code-quote">"com.foo.MyService"</span>&gt;
-
-      <span class="code-tag">&lt;jaxws:properties&gt;</span>
-         &lt;entry key=<span class="code-quote">"ws-security.callback-handler"</span>
-             value=<span class="code-quote">"interop.client.UTPasswordCallback"</span>/&gt;
-         &lt;entry key=<span class="code-quote">"ws-security.signature.properties"</span>
-             value=<span class="code-quote">"etc/keystore.properties"</span>/&gt;
-         &lt;entry key=<span class="code-quote">"ws-security.encryption.properties"</span>
-             value=<span class="code-quote">"etc/truststore.properties"</span>/&gt;
-         &lt;entry key=<span class="code-quote">"ws-security.encryption.username"</span>
-             value=<span class="code-quote">"useReqSigCert"</span>/&gt;
-      <span class="code-tag">&lt;/jaxws:properties&gt;</span>
-
-   <span class="code-tag">&lt;/jaxws:endpoint&gt;</span>
-<span class="code-tag">&lt;/beans&gt;</span>
-</pre>
+      id="MyService"
+      address="https://localhost:9001/MyService"
+      serviceName="interop:MyService"
+      endpointName="interop:MyServiceEndpoint"
+      implementor="com.foo.MyService"&gt;
+
+      &lt;jaxws:properties&gt;
+         &lt;entry key="ws-security.callback-handler"
+             value="interop.client.UTPasswordCallback"/&gt;
+         &lt;entry key="ws-security.signature.properties"
+             value="etc/keystore.properties"/&gt;
+         &lt;entry key="ws-security.encryption.properties"
+             value="etc/truststore.properties"/&gt;
+         &lt;entry key="ws-security.encryption.username"
+             value="useReqSigCert"/&gt;
+      &lt;/jaxws:properties&gt;
+
+   &lt;/jaxws:endpoint&gt;
+&lt;/beans&gt;
+]]></script>
 </div></div>
 
 <p>See this <a shape="rect" class="external-link" href="http://www.jroller.com/gmazza/entry/cxf_x509_profile" rel="nofollow">blog entry</a> for a more end-to-end example of using WS-SecurityPolicy with X.509 keys.</p>
@@ -261,11 +269,11 @@ Apache CXF -- WS-SecurityPolicy
 
 <p>Configuring the properties for the client just involves setting the properties in the client's RequestContext:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
-<pre class="code-java">
-Map&lt;<span class="code-object">String</span>, <span class="code-object">Object</span>&gt; ctx = ((BindingProvider)port).getRequestContext();
-ctx.put(<span class="code-quote">"ws-security.encryption.properties"</span>, properties);
-port.echoString(<span class="code-quote">"hello"</span>);
-</pre>
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+Map&lt;String, Object&gt; ctx = ((BindingProvider)port).getRequestContext();
+ctx.put("ws-security.encryption.properties", properties);
+port.echoString("hello");
+]]></script>
 </div></div></div>
            </div>
            <!-- Content -->

Modified: websites/production/cxf/content/docs/ws-support.html
==============================================================================
--- websites/production/cxf/content/docs/ws-support.html (original)
+++ websites/production/cxf/content/docs/ws-support.html Mon Jun 24 17:10:51 2013
@@ -25,6 +25,8 @@
 <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
 <meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source">
 <meta name="description" content="Apache CXF, Services Framework - WS-* Support">
+
+
     <title>
 Apache CXF -- WS-* Support
     </title>
@@ -42,19 +44,15 @@ Apache CXF -- WS-* Support
     <td id="cell-1-0">&nbsp;</td>
     <td id="cell-1-1">&nbsp;</td>
     <td id="cell-1-2">
-      <div style="padding: 5px;">
-        <div id="banner">
-          <!-- Banner -->
-<div id="banner-content">
+      <!-- Banner -->
+<div class="banner" id="banner"><p>
 <table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap>
 <a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a>
 </td><td align="right" colspan="1" nowrap>
 <a shape="rect" href="http://www.apache.org/" title="The Apache Sofware Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a>
 </td></tr></table>
-</div>
-          <!-- Banner -->
-        </div>
-      </div>
+</p></div>
+      <!-- Banner -->
       <div id="top-menu">
         <table border="0" cellpadding="1" cellspacing="0" width="100%">
           <tr>
@@ -94,7 +92,7 @@ Apache CXF -- WS-* Support
 
 
 <hr>
-<ul class="alternate" type="square"><li>Search
+<ul class="alternate" type="square"><li>Search<br clear="none">
 
 <form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse">
   <div>