You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by co...@apache.org on 2015/05/15 13:46:27 UTC

svn commit: r1679547 [27/33] - in /webservices/website/wss4j: ./ apidocs/ apidocs/org/apache/wss4j/binding/wss10/ apidocs/org/apache/wss4j/binding/wss10/class-use/ apidocs/org/apache/wss4j/binding/wss11/ apidocs/org/apache/wss4j/binding/wss11/class-use...

Modified: webservices/website/wss4j/xref-test/org/apache/wss4j/stax/test/EncDecryptionTest.html
URL: http://svn.apache.org/viewvc/webservices/website/wss4j/xref-test/org/apache/wss4j/stax/test/EncDecryptionTest.html?rev=1679547&r1=1679546&r2=1679547&view=diff
==============================================================================
--- webservices/website/wss4j/xref-test/org/apache/wss4j/stax/test/EncDecryptionTest.html (original)
+++ webservices/website/wss4j/xref-test/org/apache/wss4j/stax/test/EncDecryptionTest.html Fri May 15 11:46:12 2015
@@ -1233,1437 +1233,1436 @@
 <a class="jxr_linenumber" name="L1225" href="#L1225">1225</a> <em class="jxr_javadoccomment">     */</em>
 <a class="jxr_linenumber" name="L1226" href="#L1226">1226</a> 
 <a class="jxr_linenumber" name="L1227" href="#L1227">1227</a> <em class="jxr_comment">/*  Not spec conform and therefore not supported!:</em>
-<a class="jxr_linenumber" name="L1228" href="#L1228">1228</a> <em class="jxr_comment">    @Test</em>
-<a class="jxr_linenumber" name="L1229" href="#L1229">1229</a> <em class="jxr_comment">    public void testEncDecryptionKeyIdentifierBinarySecurityTokenEmbedded() throws Exception {</em>
-<a class="jxr_linenumber" name="L1230" href="#L1230">1230</a> 
-<a class="jxr_linenumber" name="L1231" href="#L1231">1231</a> <em class="jxr_comment">        ByteArrayOutputStream baos;</em>
-<a class="jxr_linenumber" name="L1232" href="#L1232">1232</a> <em class="jxr_comment">        {</em>
-<a class="jxr_linenumber" name="L1233" href="#L1233">1233</a> <em class="jxr_comment">            WSSSecurityProperties securityProperties = new WSSSecurityProperties();</em>
-<a class="jxr_linenumber" name="L1234" href="#L1234">1234</a> <em class="jxr_comment">            WSSConstants.Action[] actions = new WSSConstants.Action[]{WSSConstants.ENCRYPT};</em>
-<a class="jxr_linenumber" name="L1235" href="#L1235">1235</a> <em class="jxr_comment">            securityProperties.setActions(actions);</em>
-<a class="jxr_linenumber" name="L1236" href="#L1236">1236</a> <em class="jxr_comment">            securityProperties.loadEncryptionKeystore(this.getClass().getClassLoader().getResource("transmitter.jks"), "default".toCharArray());</em>
-<a class="jxr_linenumber" name="L1237" href="#L1237">1237</a> <em class="jxr_comment">            securityProperties.setEncryptionUser("receiver");</em>
-<a class="jxr_linenumber" name="L1238" href="#L1238">1238</a> <em class="jxr_comment">            securityProperties.setEncryptionKeyIdentifierType(WSSConstants.WSSKeyIdentifierType.BST_EMBEDDED);</em>
-<a class="jxr_linenumber" name="L1239" href="#L1239">1239</a> 
-<a class="jxr_linenumber" name="L1240" href="#L1240">1240</a> <em class="jxr_comment">            InputStream sourceDocument = this.getClass().getClassLoader().getResourceAsStream("testdata/plain-soap-1.1.xml");</em>
-<a class="jxr_linenumber" name="L1241" href="#L1241">1241</a> 
-<a class="jxr_linenumber" name="L1242" href="#L1242">1242</a> <em class="jxr_comment">            baos = doOutboundSecurity(securityProperties, sourceDocument);</em>
-<a class="jxr_linenumber" name="L1243" href="#L1243">1243</a> 
-<a class="jxr_linenumber" name="L1244" href="#L1244">1244</a> <em class="jxr_comment">            Document document = documentBuilderFactory.newDocumentBuilder().parse(new ByteArrayInputStream(baos.toByteArray()));</em>
-<a class="jxr_linenumber" name="L1245" href="#L1245">1245</a> <em class="jxr_comment">            NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());</em>
-<a class="jxr_linenumber" name="L1246" href="#L1246">1246</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());</em>
-<a class="jxr_linenumber" name="L1247" href="#L1247">1247</a> 
-<a class="jxr_linenumber" name="L1248" href="#L1248">1248</a> <em class="jxr_comment">            XPathExpression xPathExpression = getXPath("/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:Reference/wsse:BinarySecurityToken");</em>
-<a class="jxr_linenumber" name="L1249" href="#L1249">1249</a> <em class="jxr_comment">            Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);</em>
-<a class="jxr_linenumber" name="L1250" href="#L1250">1250</a> <em class="jxr_comment">            Assert.assertNotNull(node);</em>
-<a class="jxr_linenumber" name="L1251" href="#L1251">1251</a> 
-<a class="jxr_linenumber" name="L1252" href="#L1252">1252</a> <em class="jxr_comment">            nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_DataReference.getNamespaceURI(), WSSConstants.TAG_xenc_DataReference.getLocalPart());</em>
-<a class="jxr_linenumber" name="L1253" href="#L1253">1253</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.getLength(), 1);</em>
-<a class="jxr_linenumber" name="L1254" href="#L1254">1254</a> 
-<a class="jxr_linenumber" name="L1255" href="#L1255">1255</a> <em class="jxr_comment">            nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());</em>
-<a class="jxr_linenumber" name="L1256" href="#L1256">1256</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.getLength(), 1);</em>
-<a class="jxr_linenumber" name="L1257" href="#L1257">1257</a> <em class="jxr_comment">        }</em>
-<a class="jxr_linenumber" name="L1258" href="#L1258">1258</a> 
-<a class="jxr_linenumber" name="L1259" href="#L1259">1259</a> <em class="jxr_comment">        //done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1260" href="#L1260">1260</a> <em class="jxr_comment">        {</em>
-<a class="jxr_linenumber" name="L1261" href="#L1261">1261</a> <em class="jxr_comment">            WSSSecurityProperties securityProperties = new WSSSecurityProperties();</em>
-<a class="jxr_linenumber" name="L1262" href="#L1262">1262</a> <em class="jxr_comment">            securityProperties.loadDecryptionKeystore(this.getClass().getClassLoader().getResource("receiver.jks"), "default".toCharArray());</em>
-<a class="jxr_linenumber" name="L1263" href="#L1263">1263</a> <em class="jxr_comment">            securityProperties.setCallbackHandler(new org.apache.wss4j.stax.test.CallbackHandlerImpl());</em>
-<a class="jxr_linenumber" name="L1264" href="#L1264">1264</a> <em class="jxr_comment">            Document document = doInboundSecurity(securityProperties, new ByteArrayInputStream(baos.toByteArray()));</em>
-<a class="jxr_linenumber" name="L1265" href="#L1265">1265</a> 
-<a class="jxr_linenumber" name="L1266" href="#L1266">1266</a> <em class="jxr_comment">            //header element must still be there</em>
-<a class="jxr_linenumber" name="L1267" href="#L1267">1267</a> <em class="jxr_comment">            NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());</em>
-<a class="jxr_linenumber" name="L1268" href="#L1268">1268</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.getLength(), 1);</em>
-<a class="jxr_linenumber" name="L1269" href="#L1269">1269</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());</em>
-<a class="jxr_linenumber" name="L1270" href="#L1270">1270</a> 
-<a class="jxr_linenumber" name="L1271" href="#L1271">1271</a> <em class="jxr_comment">            //no encrypted content</em>
-<a class="jxr_linenumber" name="L1272" href="#L1272">1272</a> <em class="jxr_comment">            nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());</em>
-<a class="jxr_linenumber" name="L1273" href="#L1273">1273</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.getLength(), 0);</em>
-<a class="jxr_linenumber" name="L1274" href="#L1274">1274</a> <em class="jxr_comment">        }</em>
-<a class="jxr_linenumber" name="L1275" href="#L1275">1275</a> <em class="jxr_comment">    }*/</em>
-<a class="jxr_linenumber" name="L1276" href="#L1276">1276</a> 
-<a class="jxr_linenumber" name="L1277" href="#L1277">1277</a>     @Test
-<a class="jxr_linenumber" name="L1278" href="#L1278">1278</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierX509KeyOutbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1279" href="#L1279">1279</a> 
-<a class="jxr_linenumber" name="L1280" href="#L1280">1280</a>         ByteArrayOutputStream baos;
-<a class="jxr_linenumber" name="L1281" href="#L1281">1281</a>         {
-<a class="jxr_linenumber" name="L1282" href="#L1282">1282</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1283" href="#L1283">1283</a>             List&lt;WSSConstants.Action&gt; actions = <strong class="jxr_keyword">new</strong> ArrayList&lt;WSSConstants.Action&gt;();
-<a class="jxr_linenumber" name="L1284" href="#L1284">1284</a>             actions.add(WSSConstants.ENCRYPT);
-<a class="jxr_linenumber" name="L1285" href="#L1285">1285</a>             securityProperties.setActions(actions);
-<a class="jxr_linenumber" name="L1286" href="#L1286">1286</a>             securityProperties.loadEncryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"transmitter.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1287" href="#L1287">1287</a>             securityProperties.setEncryptionUser(<span class="jxr_string">"receiver"</span>);
-<a class="jxr_linenumber" name="L1288" href="#L1288">1288</a>             securityProperties.setEncryptionKeyIdentifier(WSSecurityTokenConstants.KeyIdentifier_X509KeyIdentifier);
-<a class="jxr_linenumber" name="L1289" href="#L1289">1289</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1290" href="#L1290">1290</a> 
-<a class="jxr_linenumber" name="L1291" href="#L1291">1291</a>             baos = doOutboundSecurity(securityProperties, sourceDocument);
-<a class="jxr_linenumber" name="L1292" href="#L1292">1292</a> 
-<a class="jxr_linenumber" name="L1293" href="#L1293">1293</a>             Document document = documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()));
-<a class="jxr_linenumber" name="L1294" href="#L1294">1294</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1295" href="#L1295">1295</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1296" href="#L1296">1296</a> 
-<a class="jxr_linenumber" name="L1297" href="#L1297">1297</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3']"</span>);
-<a class="jxr_linenumber" name="L1298" href="#L1298">1298</a>             Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1299" href="#L1299">1299</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1300" href="#L1300">1300</a> 
-<a class="jxr_linenumber" name="L1301" href="#L1301">1301</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_DataReference.getNamespaceURI(), WSSConstants.TAG_xenc_DataReference.getLocalPart());
-<a class="jxr_linenumber" name="L1302" href="#L1302">1302</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1303" href="#L1303">1303</a> 
-<a class="jxr_linenumber" name="L1304" href="#L1304">1304</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1305" href="#L1305">1305</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1306" href="#L1306">1306</a>         }
-<a class="jxr_linenumber" name="L1307" href="#L1307">1307</a> 
-<a class="jxr_linenumber" name="L1308" href="#L1308">1308</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1309" href="#L1309">1309</a>         {
-<a class="jxr_linenumber" name="L1310" href="#L1310">1310</a>             String action = WSHandlerConstants.ENCRYPT;
-<a class="jxr_linenumber" name="L1311" href="#L1311">1311</a>             Properties properties = <strong class="jxr_keyword">new</strong> Properties();
-<a class="jxr_linenumber" name="L1312" href="#L1312">1312</a>             doInboundSecurityWithWSS4J_1(documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())), action, properties, false);
-<a class="jxr_linenumber" name="L1313" href="#L1313">1313</a>         }
-<a class="jxr_linenumber" name="L1314" href="#L1314">1314</a>     }
-<a class="jxr_linenumber" name="L1315" href="#L1315">1315</a> 
-<a class="jxr_linenumber" name="L1316" href="#L1316">1316</a>     @Test
-<a class="jxr_linenumber" name="L1317" href="#L1317">1317</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierX509KeyInbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1318" href="#L1318">1318</a> 
-<a class="jxr_linenumber" name="L1319" href="#L1319">1319</a>         ByteArrayOutputStream baos = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a class="jxr_linenumber" name="L1320" href="#L1320">1320</a>         {
-<a class="jxr_linenumber" name="L1321" href="#L1321">1321</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1322" href="#L1322">1322</a>             String action = WSHandlerConstants.ENCRYPT;
-<a class="jxr_linenumber" name="L1323" href="#L1323">1323</a>             Properties properties = <strong class="jxr_keyword">new</strong> Properties();
-<a class="jxr_linenumber" name="L1324" href="#L1324">1324</a>             properties.setProperty(WSHandlerConstants.ENC_KEY_ID, <span class="jxr_string">"X509KeyIdentifier"</span>);
-<a class="jxr_linenumber" name="L1325" href="#L1325">1325</a>             Document securedDocument = doOutboundSecurityWithWSS4J(sourceDocument, action, properties);
-<a class="jxr_linenumber" name="L1326" href="#L1326">1326</a> 
-<a class="jxr_linenumber" name="L1327" href="#L1327">1327</a>             <em class="jxr_comment">//some test that we can really sure we get what we want from WSS4J</em>
-<a class="jxr_linenumber" name="L1328" href="#L1328">1328</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3']"</span>);
-<a class="jxr_linenumber" name="L1329" href="#L1329">1329</a>             Node node = (Node) xPathExpression.evaluate(securedDocument, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1330" href="#L1330">1330</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1331" href="#L1331">1331</a> 
-<a class="jxr_linenumber" name="L1332" href="#L1332">1332</a>             javax.xml.transform.Transformer transformer = TRANSFORMER_FACTORY.newTransformer();
-<a class="jxr_linenumber" name="L1333" href="#L1333">1333</a>             transformer.transform(<strong class="jxr_keyword">new</strong> DOMSource(securedDocument), <strong class="jxr_keyword">new</strong> StreamResult(baos));
-<a class="jxr_linenumber" name="L1334" href="#L1334">1334</a>         }
-<a class="jxr_linenumber" name="L1335" href="#L1335">1335</a> 
-<a class="jxr_linenumber" name="L1336" href="#L1336">1336</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1337" href="#L1337">1337</a>         {
-<a class="jxr_linenumber" name="L1338" href="#L1338">1338</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1339" href="#L1339">1339</a>             securityProperties.loadDecryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"receiver.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1340" href="#L1340">1340</a>             securityProperties.setCallbackHandler(<strong class="jxr_keyword">new</strong> org.apache.wss4j.stax.test.CallbackHandlerImpl());
-<a class="jxr_linenumber" name="L1341" href="#L1341">1341</a>             Document document = doInboundSecurity(securityProperties, xmlInputFactory.createXMLStreamReader(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())));
-<a class="jxr_linenumber" name="L1342" href="#L1342">1342</a> 
-<a class="jxr_linenumber" name="L1343" href="#L1343">1343</a>             <em class="jxr_comment">//header element must still be there</em>
-<a class="jxr_linenumber" name="L1344" href="#L1344">1344</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1345" href="#L1345">1345</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1346" href="#L1346">1346</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1347" href="#L1347">1347</a> 
-<a class="jxr_linenumber" name="L1348" href="#L1348">1348</a>             <em class="jxr_comment">//no encrypted content</em>
-<a class="jxr_linenumber" name="L1349" href="#L1349">1349</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1350" href="#L1350">1350</a>             Assert.assertEquals(nodeList.getLength(), 0);
-<a class="jxr_linenumber" name="L1351" href="#L1351">1351</a>         }
-<a class="jxr_linenumber" name="L1352" href="#L1352">1352</a>     }
-<a class="jxr_linenumber" name="L1353" href="#L1353">1353</a> 
-<a class="jxr_linenumber" name="L1354" href="#L1354">1354</a>     @Test
-<a class="jxr_linenumber" name="L1355" href="#L1355">1355</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierSubjectKeyOutbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1356" href="#L1356">1356</a> 
-<a class="jxr_linenumber" name="L1357" href="#L1357">1357</a>         ByteArrayOutputStream baos;
-<a class="jxr_linenumber" name="L1358" href="#L1358">1358</a>         {
-<a class="jxr_linenumber" name="L1359" href="#L1359">1359</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1360" href="#L1360">1360</a>             List&lt;WSSConstants.Action&gt; actions = <strong class="jxr_keyword">new</strong> ArrayList&lt;WSSConstants.Action&gt;();
-<a class="jxr_linenumber" name="L1361" href="#L1361">1361</a>             actions.add(WSSConstants.ENCRYPT);
-<a class="jxr_linenumber" name="L1362" href="#L1362">1362</a>             securityProperties.setActions(actions);
-<a class="jxr_linenumber" name="L1363" href="#L1363">1363</a>             securityProperties.loadEncryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"transmitter.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1364" href="#L1364">1364</a>             securityProperties.setEncryptionUser(<span class="jxr_string">"receiver"</span>);
-<a class="jxr_linenumber" name="L1365" href="#L1365">1365</a>             securityProperties.setEncryptionKeyIdentifier(WSSecurityTokenConstants.KeyIdentifier_SkiKeyIdentifier);
-<a class="jxr_linenumber" name="L1366" href="#L1366">1366</a> 
-<a class="jxr_linenumber" name="L1367" href="#L1367">1367</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1368" href="#L1368">1368</a> 
-<a class="jxr_linenumber" name="L1369" href="#L1369">1369</a>             baos = doOutboundSecurity(securityProperties, sourceDocument);
-<a class="jxr_linenumber" name="L1370" href="#L1370">1370</a> 
-<a class="jxr_linenumber" name="L1371" href="#L1371">1371</a>             Document document = documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()));
-<a class="jxr_linenumber" name="L1372" href="#L1372">1372</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1373" href="#L1373">1373</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1374" href="#L1374">1374</a> 
-<a class="jxr_linenumber" name="L1375" href="#L1375">1375</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509SubjectKeyIdentifier']"</span>);
-<a class="jxr_linenumber" name="L1376" href="#L1376">1376</a>             Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1377" href="#L1377">1377</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1378" href="#L1378">1378</a> 
-<a class="jxr_linenumber" name="L1379" href="#L1379">1379</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_DataReference.getNamespaceURI(), WSSConstants.TAG_xenc_DataReference.getLocalPart());
-<a class="jxr_linenumber" name="L1380" href="#L1380">1380</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1381" href="#L1381">1381</a> 
-<a class="jxr_linenumber" name="L1382" href="#L1382">1382</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1383" href="#L1383">1383</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1384" href="#L1384">1384</a>         }
-<a class="jxr_linenumber" name="L1385" href="#L1385">1385</a> 
-<a class="jxr_linenumber" name="L1386" href="#L1386">1386</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1387" href="#L1387">1387</a>         {
-<a class="jxr_linenumber" name="L1388" href="#L1388">1388</a>             String action = WSHandlerConstants.ENCRYPT;
-<a class="jxr_linenumber" name="L1389" href="#L1389">1389</a>             doInboundSecurityWithWSS4J(documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())), action);
-<a class="jxr_linenumber" name="L1390" href="#L1390">1390</a>         }
-<a class="jxr_linenumber" name="L1391" href="#L1391">1391</a>     }
-<a class="jxr_linenumber" name="L1392" href="#L1392">1392</a> 
-<a class="jxr_linenumber" name="L1393" href="#L1393">1393</a>     @Test
-<a class="jxr_linenumber" name="L1394" href="#L1394">1394</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierSubjectKeyInbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1395" href="#L1395">1395</a> 
-<a class="jxr_linenumber" name="L1396" href="#L1396">1396</a>         ByteArrayOutputStream baos = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a class="jxr_linenumber" name="L1397" href="#L1397">1397</a>         {
-<a class="jxr_linenumber" name="L1398" href="#L1398">1398</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1399" href="#L1399">1399</a>             String action = WSHandlerConstants.ENCRYPT;
-<a class="jxr_linenumber" name="L1400" href="#L1400">1400</a>             Properties properties = <strong class="jxr_keyword">new</strong> Properties();
-<a class="jxr_linenumber" name="L1401" href="#L1401">1401</a>             properties.setProperty(WSHandlerConstants.ENC_KEY_ID, <span class="jxr_string">"SKIKeyIdentifier"</span>);
-<a class="jxr_linenumber" name="L1402" href="#L1402">1402</a>             Document securedDocument = doOutboundSecurityWithWSS4J(sourceDocument, action, properties);
-<a class="jxr_linenumber" name="L1403" href="#L1403">1403</a> 
-<a class="jxr_linenumber" name="L1404" href="#L1404">1404</a>             <em class="jxr_comment">//some test that we can really sure we get what we want from WSS4J</em>
-<a class="jxr_linenumber" name="L1405" href="#L1405">1405</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509SubjectKeyIdentifier']"</span>);
-<a class="jxr_linenumber" name="L1406" href="#L1406">1406</a>             Node node = (Node) xPathExpression.evaluate(securedDocument, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1407" href="#L1407">1407</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1408" href="#L1408">1408</a> 
-<a class="jxr_linenumber" name="L1409" href="#L1409">1409</a>             javax.xml.transform.Transformer transformer = TRANSFORMER_FACTORY.newTransformer();
-<a class="jxr_linenumber" name="L1410" href="#L1410">1410</a>             transformer.transform(<strong class="jxr_keyword">new</strong> DOMSource(securedDocument), <strong class="jxr_keyword">new</strong> StreamResult(baos));
-<a class="jxr_linenumber" name="L1411" href="#L1411">1411</a>         }
-<a class="jxr_linenumber" name="L1412" href="#L1412">1412</a> 
-<a class="jxr_linenumber" name="L1413" href="#L1413">1413</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1414" href="#L1414">1414</a>         {
-<a class="jxr_linenumber" name="L1415" href="#L1415">1415</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1416" href="#L1416">1416</a>             securityProperties.loadDecryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"receiver.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1417" href="#L1417">1417</a>             securityProperties.setCallbackHandler(<strong class="jxr_keyword">new</strong> org.apache.wss4j.stax.test.CallbackHandlerImpl());
-<a class="jxr_linenumber" name="L1418" href="#L1418">1418</a>             Document document = doInboundSecurity(securityProperties, xmlInputFactory.createXMLStreamReader(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())));
-<a class="jxr_linenumber" name="L1419" href="#L1419">1419</a> 
-<a class="jxr_linenumber" name="L1420" href="#L1420">1420</a>             <em class="jxr_comment">//header element must still be there</em>
-<a class="jxr_linenumber" name="L1421" href="#L1421">1421</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1422" href="#L1422">1422</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1423" href="#L1423">1423</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1424" href="#L1424">1424</a> 
-<a class="jxr_linenumber" name="L1425" href="#L1425">1425</a>             <em class="jxr_comment">//no encrypted content</em>
-<a class="jxr_linenumber" name="L1426" href="#L1426">1426</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1427" href="#L1427">1427</a>             Assert.assertEquals(nodeList.getLength(), 0);
-<a class="jxr_linenumber" name="L1428" href="#L1428">1428</a>         }
-<a class="jxr_linenumber" name="L1429" href="#L1429">1429</a>     }
-<a class="jxr_linenumber" name="L1430" href="#L1430">1430</a> 
-<a class="jxr_linenumber" name="L1431" href="#L1431">1431</a>     @Test
-<a class="jxr_linenumber" name="L1432" href="#L1432">1432</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierThumbprintOutbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1433" href="#L1433">1433</a> 
-<a class="jxr_linenumber" name="L1434" href="#L1434">1434</a>         ByteArrayOutputStream baos;
-<a class="jxr_linenumber" name="L1435" href="#L1435">1435</a>         {
-<a class="jxr_linenumber" name="L1436" href="#L1436">1436</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1437" href="#L1437">1437</a>             List&lt;WSSConstants.Action&gt; actions = <strong class="jxr_keyword">new</strong> ArrayList&lt;WSSConstants.Action&gt;();
-<a class="jxr_linenumber" name="L1438" href="#L1438">1438</a>             actions.add(WSSConstants.ENCRYPT);
-<a class="jxr_linenumber" name="L1439" href="#L1439">1439</a>             securityProperties.setActions(actions);
-<a class="jxr_linenumber" name="L1440" href="#L1440">1440</a>             securityProperties.loadEncryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"transmitter.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1441" href="#L1441">1441</a>             securityProperties.setEncryptionUser(<span class="jxr_string">"receiver"</span>);
-<a class="jxr_linenumber" name="L1442" href="#L1442">1442</a>             securityProperties.setEncryptionKeyIdentifier(WSSecurityTokenConstants.KeyIdentifier_ThumbprintIdentifier);
-<a class="jxr_linenumber" name="L1443" href="#L1443">1443</a> 
-<a class="jxr_linenumber" name="L1444" href="#L1444">1444</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1445" href="#L1445">1445</a> 
-<a class="jxr_linenumber" name="L1446" href="#L1446">1446</a>             baos = doOutboundSecurity(securityProperties, sourceDocument);
-<a class="jxr_linenumber" name="L1447" href="#L1447">1447</a> 
-<a class="jxr_linenumber" name="L1448" href="#L1448">1448</a>             Document document = documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()));
-<a class="jxr_linenumber" name="L1449" href="#L1449">1449</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1450" href="#L1450">1450</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1451" href="#L1451">1451</a> 
-<a class="jxr_linenumber" name="L1452" href="#L1452">1452</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#ThumbprintSHA1']"</span>);
-<a class="jxr_linenumber" name="L1453" href="#L1453">1453</a>             Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1454" href="#L1454">1454</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1455" href="#L1455">1455</a> 
-<a class="jxr_linenumber" name="L1456" href="#L1456">1456</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_DataReference.getNamespaceURI(), WSSConstants.TAG_xenc_DataReference.getLocalPart());
-<a class="jxr_linenumber" name="L1457" href="#L1457">1457</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1458" href="#L1458">1458</a> 
-<a class="jxr_linenumber" name="L1459" href="#L1459">1459</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1460" href="#L1460">1460</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1461" href="#L1461">1461</a>         }
-<a class="jxr_linenumber" name="L1462" href="#L1462">1462</a> 
-<a class="jxr_linenumber" name="L1463" href="#L1463">1463</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1464" href="#L1464">1464</a>         {
-<a class="jxr_linenumber" name="L1465" href="#L1465">1465</a>             String action = WSHandlerConstants.ENCRYPT;
-<a class="jxr_linenumber" name="L1466" href="#L1466">1466</a>             doInboundSecurityWithWSS4J(documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())), action);
-<a class="jxr_linenumber" name="L1467" href="#L1467">1467</a>         }
-<a class="jxr_linenumber" name="L1468" href="#L1468">1468</a>     }
-<a class="jxr_linenumber" name="L1469" href="#L1469">1469</a> 
-<a class="jxr_linenumber" name="L1470" href="#L1470">1470</a>     @Test
-<a class="jxr_linenumber" name="L1471" href="#L1471">1471</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierThumbprintInbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1472" href="#L1472">1472</a> 
-<a class="jxr_linenumber" name="L1473" href="#L1473">1473</a>         ByteArrayOutputStream baos = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a class="jxr_linenumber" name="L1474" href="#L1474">1474</a>         {
-<a class="jxr_linenumber" name="L1475" href="#L1475">1475</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1476" href="#L1476">1476</a>             String action = WSHandlerConstants.ENCRYPT;
-<a class="jxr_linenumber" name="L1477" href="#L1477">1477</a>             Properties properties = <strong class="jxr_keyword">new</strong> Properties();
-<a class="jxr_linenumber" name="L1478" href="#L1478">1478</a>             properties.setProperty(WSHandlerConstants.ENC_KEY_ID, <span class="jxr_string">"Thumbprint"</span>);
-<a class="jxr_linenumber" name="L1479" href="#L1479">1479</a>             Document securedDocument = doOutboundSecurityWithWSS4J(sourceDocument, action, properties);
-<a class="jxr_linenumber" name="L1480" href="#L1480">1480</a> 
-<a class="jxr_linenumber" name="L1481" href="#L1481">1481</a>             <em class="jxr_comment">//some test that we can really sure we get what we want from WSS4J</em>
-<a class="jxr_linenumber" name="L1482" href="#L1482">1482</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#ThumbprintSHA1']"</span>);
-<a class="jxr_linenumber" name="L1483" href="#L1483">1483</a>             Node node = (Node) xPathExpression.evaluate(securedDocument, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1484" href="#L1484">1484</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1485" href="#L1485">1485</a> 
-<a class="jxr_linenumber" name="L1486" href="#L1486">1486</a>             javax.xml.transform.Transformer transformer = TRANSFORMER_FACTORY.newTransformer();
-<a class="jxr_linenumber" name="L1487" href="#L1487">1487</a>             transformer.transform(<strong class="jxr_keyword">new</strong> DOMSource(securedDocument), <strong class="jxr_keyword">new</strong> StreamResult(baos));
-<a class="jxr_linenumber" name="L1488" href="#L1488">1488</a>         }
-<a class="jxr_linenumber" name="L1489" href="#L1489">1489</a> 
-<a class="jxr_linenumber" name="L1490" href="#L1490">1490</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1491" href="#L1491">1491</a>         {
-<a class="jxr_linenumber" name="L1492" href="#L1492">1492</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1493" href="#L1493">1493</a>             securityProperties.loadDecryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"receiver.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1494" href="#L1494">1494</a>             securityProperties.setCallbackHandler(<strong class="jxr_keyword">new</strong> org.apache.wss4j.stax.test.CallbackHandlerImpl());
-<a class="jxr_linenumber" name="L1495" href="#L1495">1495</a>             Document document = doInboundSecurity(securityProperties, xmlInputFactory.createXMLStreamReader(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())));
-<a class="jxr_linenumber" name="L1496" href="#L1496">1496</a> 
-<a class="jxr_linenumber" name="L1497" href="#L1497">1497</a>             <em class="jxr_comment">//header element must still be there</em>
-<a class="jxr_linenumber" name="L1498" href="#L1498">1498</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1499" href="#L1499">1499</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1500" href="#L1500">1500</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1501" href="#L1501">1501</a> 
-<a class="jxr_linenumber" name="L1502" href="#L1502">1502</a>             <em class="jxr_comment">//no encrypted content</em>
-<a class="jxr_linenumber" name="L1503" href="#L1503">1503</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1504" href="#L1504">1504</a>             Assert.assertEquals(nodeList.getLength(), 0);
-<a class="jxr_linenumber" name="L1505" href="#L1505">1505</a>         }
-<a class="jxr_linenumber" name="L1506" href="#L1506">1506</a>     }
-<a class="jxr_linenumber" name="L1507" href="#L1507">1507</a> 
-<a class="jxr_linenumber" name="L1508" href="#L1508">1508</a>     @Test
-<a class="jxr_linenumber" name="L1509" href="#L1509">1509</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierSHA1Outbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1510" href="#L1510">1510</a> 
-<a class="jxr_linenumber" name="L1511" href="#L1511">1511</a>         ByteArrayOutputStream baos;
-<a class="jxr_linenumber" name="L1512" href="#L1512">1512</a>         {
-<a class="jxr_linenumber" name="L1513" href="#L1513">1513</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1514" href="#L1514">1514</a>             List&lt;WSSConstants.Action&gt; actions = <strong class="jxr_keyword">new</strong> ArrayList&lt;WSSConstants.Action&gt;();
-<a class="jxr_linenumber" name="L1515" href="#L1515">1515</a>             actions.add(WSSConstants.ENCRYPT);
-<a class="jxr_linenumber" name="L1516" href="#L1516">1516</a>             securityProperties.setActions(actions);
-<a class="jxr_linenumber" name="L1517" href="#L1517">1517</a>             securityProperties.loadEncryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"transmitter.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1518" href="#L1518">1518</a>             securityProperties.setEncryptionUser(<span class="jxr_string">"receiver"</span>);
-<a class="jxr_linenumber" name="L1519" href="#L1519">1519</a>             securityProperties.setEncryptionKeyIdentifier(WSSecurityTokenConstants.KeyIdentifier_EncryptedKeySha1Identifier);
-<a class="jxr_linenumber" name="L1520" href="#L1520">1520</a> 
-<a class="jxr_linenumber" name="L1521" href="#L1521">1521</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1522" href="#L1522">1522</a> 
-<a class="jxr_linenumber" name="L1523" href="#L1523">1523</a>             baos = doOutboundSecurity(securityProperties, sourceDocument);
-<a class="jxr_linenumber" name="L1524" href="#L1524">1524</a> 
-<a class="jxr_linenumber" name="L1525" href="#L1525">1525</a>             Document document = documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()));
-<a class="jxr_linenumber" name="L1526" href="#L1526">1526</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1527" href="#L1527">1527</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1528" href="#L1528">1528</a> 
-<a class="jxr_linenumber" name="L1529" href="#L1529">1529</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#ThumbprintSHA1']"</span>);
-<a class="jxr_linenumber" name="L1530" href="#L1530">1530</a>             Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1531" href="#L1531">1531</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1532" href="#L1532">1532</a> 
-<a class="jxr_linenumber" name="L1533" href="#L1533">1533</a>             xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Body/xenc:EncryptedData/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#EncryptedKeySHA1']"</span>);
-<a class="jxr_linenumber" name="L1534" href="#L1534">1534</a>             node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1535" href="#L1535">1535</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1536" href="#L1536">1536</a> 
-<a class="jxr_linenumber" name="L1537" href="#L1537">1537</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_DataReference.getNamespaceURI(), WSSConstants.TAG_xenc_DataReference.getLocalPart());
-<a class="jxr_linenumber" name="L1538" href="#L1538">1538</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1539" href="#L1539">1539</a> 
-<a class="jxr_linenumber" name="L1540" href="#L1540">1540</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1541" href="#L1541">1541</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1542" href="#L1542">1542</a>         }
-<a class="jxr_linenumber" name="L1543" href="#L1543">1543</a> 
-<a class="jxr_linenumber" name="L1544" href="#L1544">1544</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1545" href="#L1545">1545</a>         {
-<a class="jxr_linenumber" name="L1546" href="#L1546">1546</a>             String action = WSHandlerConstants.ENCRYPT;
-<a class="jxr_linenumber" name="L1547" href="#L1547">1547</a>             doInboundSecurityWithWSS4J(documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())), action);
-<a class="jxr_linenumber" name="L1548" href="#L1548">1548</a>         }
-<a class="jxr_linenumber" name="L1549" href="#L1549">1549</a>     }
-<a class="jxr_linenumber" name="L1550" href="#L1550">1550</a> 
-<a class="jxr_linenumber" name="L1551" href="#L1551">1551</a>     @Test
-<a class="jxr_linenumber" name="L1552" href="#L1552">1552</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierSHA1Inbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1553" href="#L1553">1553</a> 
-<a class="jxr_linenumber" name="L1554" href="#L1554">1554</a>         KeyGenerator keyGen = KeyGenerator.getInstance(<span class="jxr_string">"AES"</span>);
-<a class="jxr_linenumber" name="L1555" href="#L1555">1555</a>         keyGen.init(128);
-<a class="jxr_linenumber" name="L1556" href="#L1556">1556</a>         SecretKey key = keyGen.generateKey();
-<a class="jxr_linenumber" name="L1557" href="#L1557">1557</a> 
-<a class="jxr_linenumber" name="L1558" href="#L1558">1558</a>         ByteArrayOutputStream baos = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a class="jxr_linenumber" name="L1559" href="#L1559">1559</a>         {
-<a class="jxr_linenumber" name="L1560" href="#L1560">1560</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1561" href="#L1561">1561</a> 
-<a class="jxr_linenumber" name="L1562" href="#L1562">1562</a>             Document doc = documentBuilderFactory.newDocumentBuilder().parse(sourceDocument);
-<a class="jxr_linenumber" name="L1563" href="#L1563">1563</a> 
-<a class="jxr_linenumber" name="L1564" href="#L1564">1564</a>             WSSecHeader secHeader = <strong class="jxr_keyword">new</strong> WSSecHeader();
-<a class="jxr_linenumber" name="L1565" href="#L1565">1565</a>             secHeader.insertSecurityHeader(doc);
-<a class="jxr_linenumber" name="L1566" href="#L1566">1566</a> 
-<a class="jxr_linenumber" name="L1567" href="#L1567">1567</a>             WSSecEncrypt builder = <strong class="jxr_keyword">new</strong> WSSecEncrypt();
-<a class="jxr_linenumber" name="L1568" href="#L1568">1568</a>             builder.setKeyIdentifierType(WSConstants.ENCRYPTED_KEY_SHA1_IDENTIFIER);
-<a class="jxr_linenumber" name="L1569" href="#L1569">1569</a>             builder.setSymmetricKey(key);
-<a class="jxr_linenumber" name="L1570" href="#L1570">1570</a>             builder.setEncryptSymmKey(false);
-<a class="jxr_linenumber" name="L1571" href="#L1571">1571</a>             Document securedDocument = builder.build(doc, <strong class="jxr_keyword">null</strong>, secHeader);
-<a class="jxr_linenumber" name="L1572" href="#L1572">1572</a> 
-<a class="jxr_linenumber" name="L1573" href="#L1573">1573</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Body/xenc:EncryptedData/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/oasis-wss-soap-message-security-1.1#EncryptedKeySHA1']"</span>);
-<a class="jxr_linenumber" name="L1574" href="#L1574">1574</a>             Node node = (Node) xPathExpression.evaluate(securedDocument, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1575" href="#L1575">1575</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1576" href="#L1576">1576</a> 
-<a class="jxr_linenumber" name="L1577" href="#L1577">1577</a>             javax.xml.transform.Transformer transformer = TRANSFORMER_FACTORY.newTransformer();
-<a class="jxr_linenumber" name="L1578" href="#L1578">1578</a>             transformer.transform(<strong class="jxr_keyword">new</strong> DOMSource(securedDocument), <strong class="jxr_keyword">new</strong> StreamResult(baos));
-<a class="jxr_linenumber" name="L1579" href="#L1579">1579</a>         }
-<a class="jxr_linenumber" name="L1580" href="#L1580">1580</a> 
-<a class="jxr_linenumber" name="L1581" href="#L1581">1581</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1582" href="#L1582">1582</a>         {
-<a class="jxr_linenumber" name="L1583" href="#L1583">1583</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1584" href="#L1584">1584</a>             securityProperties.loadDecryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"receiver.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1585" href="#L1585">1585</a>             securityProperties.setCallbackHandler(<strong class="jxr_keyword">new</strong> org.apache.wss4j.stax.test.CallbackHandlerImpl(key.getEncoded()));
-<a class="jxr_linenumber" name="L1586" href="#L1586">1586</a>             Document document = doInboundSecurity(securityProperties, xmlInputFactory.createXMLStreamReader(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())));
-<a class="jxr_linenumber" name="L1587" href="#L1587">1587</a> 
-<a class="jxr_linenumber" name="L1588" href="#L1588">1588</a>             <em class="jxr_comment">//no encrypted content</em>
-<a class="jxr_linenumber" name="L1589" href="#L1589">1589</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1590" href="#L1590">1590</a>             Assert.assertEquals(nodeList.getLength(), 0);
-<a class="jxr_linenumber" name="L1591" href="#L1591">1591</a>         }
-<a class="jxr_linenumber" name="L1592" href="#L1592">1592</a>     }
-<a class="jxr_linenumber" name="L1593" href="#L1593">1593</a> 
-<a class="jxr_linenumber" name="L1594" href="#L1594">1594</a>     @Test
-<a class="jxr_linenumber" name="L1595" href="#L1595">1595</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testDecryptionReferenceListOutsideEncryptedKey() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1596" href="#L1596">1596</a> 
-<a class="jxr_linenumber" name="L1597" href="#L1597">1597</a>         ByteArrayOutputStream baos;
-<a class="jxr_linenumber" name="L1598" href="#L1598">1598</a>         {
-<a class="jxr_linenumber" name="L1599" href="#L1599">1599</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1600" href="#L1600">1600</a>             List&lt;WSSConstants.Action&gt; actions = <strong class="jxr_keyword">new</strong> ArrayList&lt;WSSConstants.Action&gt;();
-<a class="jxr_linenumber" name="L1601" href="#L1601">1601</a>             actions.add(WSSConstants.ENCRYPT);
-<a class="jxr_linenumber" name="L1602" href="#L1602">1602</a>             securityProperties.setActions(actions);
-<a class="jxr_linenumber" name="L1603" href="#L1603">1603</a>             securityProperties.loadEncryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"transmitter.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1604" href="#L1604">1604</a>             securityProperties.setEncryptionUser(<span class="jxr_string">"receiver"</span>);
-<a class="jxr_linenumber" name="L1605" href="#L1605">1605</a>             securityProperties.setEncryptionKeyIdentifier(WSSecurityTokenConstants.KeyIdentifier_IssuerSerial);
-<a class="jxr_linenumber" name="L1606" href="#L1606">1606</a> 
-<a class="jxr_linenumber" name="L1607" href="#L1607">1607</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1608" href="#L1608">1608</a> 
-<a class="jxr_linenumber" name="L1609" href="#L1609">1609</a>             baos = doOutboundSecurity(securityProperties, sourceDocument);
-<a class="jxr_linenumber" name="L1610" href="#L1610">1610</a> 
-<a class="jxr_linenumber" name="L1611" href="#L1611">1611</a>             Document document = documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()));
-<a class="jxr_linenumber" name="L1612" href="#L1612">1612</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1613" href="#L1613">1613</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1614" href="#L1614">1614</a> 
-<a class="jxr_linenumber" name="L1615" href="#L1615">1615</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/dsig:X509Data/dsig:X509IssuerSerial/dsig:X509SerialNumber"</span>);
-<a class="jxr_linenumber" name="L1616" href="#L1616">1616</a>             Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1617" href="#L1617">1617</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1618" href="#L1618">1618</a> 
-<a class="jxr_linenumber" name="L1619" href="#L1619">1619</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_DataReference.getNamespaceURI(), WSSConstants.TAG_xenc_DataReference.getLocalPart());
-<a class="jxr_linenumber" name="L1620" href="#L1620">1620</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1621" href="#L1621">1621</a> 
-<a class="jxr_linenumber" name="L1622" href="#L1622">1622</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1623" href="#L1623">1623</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1624" href="#L1624">1624</a> 
-<a class="jxr_linenumber" name="L1625" href="#L1625">1625</a>             <em class="jxr_comment">//move ReferenceList...</em>
-<a class="jxr_linenumber" name="L1626" href="#L1626">1626</a>             TransformerFactory transFact = TransformerFactory.newInstance();
-<a class="jxr_linenumber" name="L1627" href="#L1627">1627</a>             Transformer trans = transFact.newTransformer(<strong class="jxr_keyword">new</strong> StreamSource(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"xsl/testDecryptionReferenceListOutsideEncryptedKey.xsl"</span>)));
-<a class="jxr_linenumber" name="L1628" href="#L1628">1628</a>             baos.reset();
-<a class="jxr_linenumber" name="L1629" href="#L1629">1629</a>             trans.transform(<strong class="jxr_keyword">new</strong> DOMSource(document), <strong class="jxr_keyword">new</strong> StreamResult(baos));
-<a class="jxr_linenumber" name="L1630" href="#L1630">1630</a> 
-<a class="jxr_linenumber" name="L1631" href="#L1631">1631</a>         }
-<a class="jxr_linenumber" name="L1632" href="#L1632">1632</a> 
-<a class="jxr_linenumber" name="L1633" href="#L1633">1633</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1634" href="#L1634">1634</a>         {
-<a class="jxr_linenumber" name="L1635" href="#L1635">1635</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1636" href="#L1636">1636</a>             securityProperties.loadDecryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"receiver.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1637" href="#L1637">1637</a>             securityProperties.setCallbackHandler(<strong class="jxr_keyword">new</strong> org.apache.wss4j.stax.test.CallbackHandlerImpl());
-<a class="jxr_linenumber" name="L1638" href="#L1638">1638</a>             Document document = doInboundSecurity(securityProperties, <strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()));
-<a class="jxr_linenumber" name="L1639" href="#L1639">1639</a> 
-<a class="jxr_linenumber" name="L1640" href="#L1640">1640</a>             <em class="jxr_comment">//header element must still be there</em>
-<a class="jxr_linenumber" name="L1641" href="#L1641">1641</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1642" href="#L1642">1642</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1643" href="#L1643">1643</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1644" href="#L1644">1644</a> 
-<a class="jxr_linenumber" name="L1645" href="#L1645">1645</a>             <em class="jxr_comment">//no encrypted content</em>
-<a class="jxr_linenumber" name="L1646" href="#L1646">1646</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1647" href="#L1647">1647</a>             Assert.assertEquals(nodeList.getLength(), 0);
-<a class="jxr_linenumber" name="L1648" href="#L1648">1648</a>         }
-<a class="jxr_linenumber" name="L1649" href="#L1649">1649</a>     }
-<a class="jxr_linenumber" name="L1650" href="#L1650">1650</a> 
-<a class="jxr_linenumber" name="L1651" href="#L1651">1651</a>     @Test
-<a class="jxr_linenumber" name="L1652" href="#L1652">1652</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionSuperEncryptionInbound() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1653" href="#L1653">1653</a> 
-<a class="jxr_linenumber" name="L1654" href="#L1654">1654</a>         ByteArrayOutputStream baos = <strong class="jxr_keyword">new</strong> ByteArrayOutputStream();
-<a class="jxr_linenumber" name="L1655" href="#L1655">1655</a> 
-<a class="jxr_linenumber" name="L1656" href="#L1656">1656</a>         {
-<a class="jxr_linenumber" name="L1657" href="#L1657">1657</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1658" href="#L1658">1658</a>             String action = WSHandlerConstants.ENCRYPT;
-<a class="jxr_linenumber" name="L1659" href="#L1659">1659</a>             Document securedDocument = doOutboundSecurityWithWSS4J(sourceDocument, action, <strong class="jxr_keyword">new</strong> Properties());
-<a class="jxr_linenumber" name="L1660" href="#L1660">1660</a> 
-<a class="jxr_linenumber" name="L1661" href="#L1661">1661</a>             javax.xml.transform.Transformer transformer = TRANSFORMER_FACTORY.newTransformer();
-<a class="jxr_linenumber" name="L1662" href="#L1662">1662</a>             transformer.transform(<strong class="jxr_keyword">new</strong> DOMSource(securedDocument), <strong class="jxr_keyword">new</strong> StreamResult(baos));
-<a class="jxr_linenumber" name="L1663" href="#L1663">1663</a> 
-<a class="jxr_linenumber" name="L1664" href="#L1664">1664</a>             securedDocument = doOutboundSecurityWithWSS4J(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()), action, <strong class="jxr_keyword">new</strong> Properties());
-<a class="jxr_linenumber" name="L1665" href="#L1665">1665</a> 
-<a class="jxr_linenumber" name="L1666" href="#L1666">1666</a>             <em class="jxr_comment">//some test that we can really sure we get what we want from WSS4J</em>
-<a class="jxr_linenumber" name="L1667" href="#L1667">1667</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/xenc:EncryptionMethod[@Algorithm='http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p']"</span>);
-<a class="jxr_linenumber" name="L1668" href="#L1668">1668</a>             NodeList nodeList = (NodeList) xPathExpression.evaluate(securedDocument, XPathConstants.NODESET);
-<a class="jxr_linenumber" name="L1669" href="#L1669">1669</a>             Assert.assertEquals(nodeList.getLength(), 2);
-<a class="jxr_linenumber" name="L1670" href="#L1670">1670</a> 
-<a class="jxr_linenumber" name="L1671" href="#L1671">1671</a>             transformer = TRANSFORMER_FACTORY.newTransformer();
-<a class="jxr_linenumber" name="L1672" href="#L1672">1672</a>             baos.reset();
-<a class="jxr_linenumber" name="L1673" href="#L1673">1673</a>             transformer.transform(<strong class="jxr_keyword">new</strong> DOMSource(securedDocument), <strong class="jxr_keyword">new</strong> StreamResult(baos));
-<a class="jxr_linenumber" name="L1674" href="#L1674">1674</a>         }
-<a class="jxr_linenumber" name="L1675" href="#L1675">1675</a>         <em class="jxr_comment">//test streaming decryption</em>
-<a class="jxr_linenumber" name="L1676" href="#L1676">1676</a>         {
-<a class="jxr_linenumber" name="L1677" href="#L1677">1677</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1678" href="#L1678">1678</a>             securityProperties.loadDecryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"receiver.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1679" href="#L1679">1679</a>             securityProperties.setCallbackHandler(<strong class="jxr_keyword">new</strong> <a href="../../../../../org/apache/wss4j/stax/test/CallbackHandlerImpl.html">CallbackHandlerImpl</a>());
-<a class="jxr_linenumber" name="L1680" href="#L1680">1680</a>             Document document = doInboundSecurity(securityProperties, xmlInputFactory.createXMLStreamReader(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray())));
-<a class="jxr_linenumber" name="L1681" href="#L1681">1681</a> 
-<a class="jxr_linenumber" name="L1682" href="#L1682">1682</a>             <em class="jxr_comment">//header element must still be there</em>
-<a class="jxr_linenumber" name="L1683" href="#L1683">1683</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1684" href="#L1684">1684</a>             Assert.assertEquals(nodeList.getLength(), 2);
-<a class="jxr_linenumber" name="L1685" href="#L1685">1685</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1686" href="#L1686">1686</a> 
-<a class="jxr_linenumber" name="L1687" href="#L1687">1687</a>             <em class="jxr_comment">//no encrypted content</em>
-<a class="jxr_linenumber" name="L1688" href="#L1688">1688</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1689" href="#L1689">1689</a>             Assert.assertEquals(nodeList.getLength(), 0);
-<a class="jxr_linenumber" name="L1690" href="#L1690">1690</a>         }
-<a class="jxr_linenumber" name="L1691" href="#L1691">1691</a>     }
-<a class="jxr_linenumber" name="L1692" href="#L1692">1692</a> 
-<a class="jxr_linenumber" name="L1693" href="#L1693">1693</a>     @Test
-<a class="jxr_linenumber" name="L1694" href="#L1694">1694</a>     @SuppressWarnings(<span class="jxr_string">"unchecked"</span>)
-<a class="jxr_linenumber" name="L1695" href="#L1695">1695</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testCompressedEncDecryption() <strong class="jxr_keyword">throws</strong> Exception {
-<a class="jxr_linenumber" name="L1696" href="#L1696">1696</a> 
-<a class="jxr_linenumber" name="L1697" href="#L1697">1697</a>         Init.init(WSSec.<strong class="jxr_keyword">class</strong>.getClassLoader().getResource(<span class="jxr_string">"wss/wss-config.xml"</span>).toURI(), WSSec.<strong class="jxr_keyword">class</strong>);
-<a class="jxr_linenumber" name="L1698" href="#L1698">1698</a>         Field algorithmsClassMapField = TransformerAlgorithmMapper.<strong class="jxr_keyword">class</strong>.getDeclaredField(<span class="jxr_string">"algorithmsClassMapOut"</span>);
-<a class="jxr_linenumber" name="L1699" href="#L1699">1699</a>         algorithmsClassMapField.setAccessible(<strong class="jxr_keyword">true</strong>);
-<a class="jxr_linenumber" name="L1700" href="#L1700">1700</a>         Map&lt;String, Class&lt;?&gt;&gt; map = (Map&lt;String, Class&lt;?&gt;&gt;)algorithmsClassMapField.get(<strong class="jxr_keyword">null</strong>);
-<a class="jxr_linenumber" name="L1701" href="#L1701">1701</a>         map.put(<span class="jxr_string">"http://www.apache.org/2012/04/xmlsec/gzip"</span>, GzipCompressorOutputStream.<strong class="jxr_keyword">class</strong>);
-<a class="jxr_linenumber" name="L1702" href="#L1702">1702</a>         algorithmsClassMapField = TransformerAlgorithmMapper.<strong class="jxr_keyword">class</strong>.getDeclaredField(<span class="jxr_string">"algorithmsClassMapIn"</span>);
-<a class="jxr_linenumber" name="L1703" href="#L1703">1703</a>         algorithmsClassMapField.setAccessible(<strong class="jxr_keyword">true</strong>);
-<a class="jxr_linenumber" name="L1704" href="#L1704">1704</a>         map = (Map&lt;String, Class&lt;?&gt;&gt;)algorithmsClassMapField.get(<strong class="jxr_keyword">null</strong>);
-<a class="jxr_linenumber" name="L1705" href="#L1705">1705</a>         map.put(<span class="jxr_string">"http://www.apache.org/2012/04/xmlsec/gzip"</span>, GzipCompressorInputStream.<strong class="jxr_keyword">class</strong>);
-<a class="jxr_linenumber" name="L1706" href="#L1706">1706</a> 
-<a class="jxr_linenumber" name="L1707" href="#L1707">1707</a>         ByteArrayOutputStream baos;
-<a class="jxr_linenumber" name="L1708" href="#L1708">1708</a>         {
-<a class="jxr_linenumber" name="L1709" href="#L1709">1709</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1710" href="#L1710">1710</a>             List&lt;WSSConstants.Action&gt; actions = <strong class="jxr_keyword">new</strong> ArrayList&lt;WSSConstants.Action&gt;();
-<a class="jxr_linenumber" name="L1711" href="#L1711">1711</a>             actions.add(WSSConstants.ENCRYPT);
-<a class="jxr_linenumber" name="L1712" href="#L1712">1712</a>             securityProperties.setActions(actions);
-<a class="jxr_linenumber" name="L1713" href="#L1713">1713</a>             securityProperties.loadEncryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"transmitter.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1714" href="#L1714">1714</a>             securityProperties.setEncryptionUser(<span class="jxr_string">"receiver"</span>);
-<a class="jxr_linenumber" name="L1715" href="#L1715">1715</a>             securityProperties.setEncryptionCompressionAlgorithm(<span class="jxr_string">"http://www.apache.org/2012/04/xmlsec/gzip"</span>);
-<a class="jxr_linenumber" name="L1716" href="#L1716">1716</a> 
-<a class="jxr_linenumber" name="L1717" href="#L1717">1717</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
-<a class="jxr_linenumber" name="L1718" href="#L1718">1718</a>             baos = doOutboundSecurity(securityProperties, sourceDocument);
-<a class="jxr_linenumber" name="L1719" href="#L1719">1719</a> 
-<a class="jxr_linenumber" name="L1720" href="#L1720">1720</a>             Document document = documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()));
-<a class="jxr_linenumber" name="L1721" href="#L1721">1721</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
-<a class="jxr_linenumber" name="L1722" href="#L1722">1722</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
-<a class="jxr_linenumber" name="L1723" href="#L1723">1723</a> 
-<a class="jxr_linenumber" name="L1724" href="#L1724">1724</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/xenc:EncryptionMethod[@Algorithm='http://www.w3.org/2001/04/xmlenc#rsa-oaep-mgf1p']"</span>);
-<a class="jxr_linenumber" name="L1725" href="#L1725">1725</a>             Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1726" href="#L1726">1726</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1727" href="#L1727">1727</a> 
-<a class="jxr_linenumber" name="L1728" href="#L1728">1728</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_DataReference.getNamespaceURI(), WSSConstants.TAG_xenc_DataReference.getLocalPart());
-<a class="jxr_linenumber" name="L1729" href="#L1729">1729</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1730" href="#L1730">1730</a> 
-<a class="jxr_linenumber" name="L1731" href="#L1731">1731</a>             nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());
-<a class="jxr_linenumber" name="L1732" href="#L1732">1732</a>             Assert.assertEquals(nodeList.getLength(), 1);
-<a class="jxr_linenumber" name="L1733" href="#L1733">1733</a> 
-<a class="jxr_linenumber" name="L1734" href="#L1734">1734</a>             xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Body/xenc:EncryptedData/xenc:EncryptionMethod[@Algorithm='http://www.w3.org/2001/04/xmlenc#aes256-cbc']"</span>);
-<a class="jxr_linenumber" name="L1735" href="#L1735">1735</a>             node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
-<a class="jxr_linenumber" name="L1736" href="#L1736">1736</a>             Assert.assertNotNull(node);
-<a class="jxr_linenumber" name="L1737" href="#L1737">1737</a> 
-<a class="jxr_linenumber" name="L1738" href="#L1738">1738</a>             Assert.assertEquals(node.getParentNode().getParentNode().getLocalName(), <span class="jxr_string">"Body"</span>);
-<a class="jxr_linenumber" name="L1739" href="#L1739">1739</a>             NodeList childNodes = node.getParentNode().getParentNode().getChildNodes();
-<a class="jxr_linenumber" name="L1740" href="#L1740">1740</a>             <strong class="jxr_keyword">for</strong> (<strong class="jxr_keyword">int</strong> i = 0; i &lt; childNodes.getLength(); i++) {
-<a class="jxr_linenumber" name="L1741" href="#L1741">1741</a>                 Node child = childNodes.item(i);
-<a class="jxr_linenumber" name="L1742" href="#L1742">1742</a>                 <strong class="jxr_keyword">if</strong> (child.getNodeType() == Node.TEXT_NODE) {
-<a class="jxr_linenumber" name="L1743" href="#L1743">1743</a>                     Assert.assertEquals(child.getTextContent().trim(), <span class="jxr_string">""</span>);
-<a class="jxr_linenumber" name="L1744" href="#L1744">1744</a>                 } <strong class="jxr_keyword">else</strong> <strong class="jxr_keyword">if</strong> (child.getNodeType() == Node.ELEMENT_NODE) {
-<a class="jxr_linenumber" name="L1745" href="#L1745">1745</a>                     Assert.assertEquals(child, nodeList.item(0));
-<a class="jxr_linenumber" name="L1746" href="#L1746">1746</a>                 } <strong class="jxr_keyword">else</strong> {
-<a class="jxr_linenumber" name="L1747" href="#L1747">1747</a>                     Assert.fail(<span class="jxr_string">"Unexpected Node encountered"</span>);
-<a class="jxr_linenumber" name="L1748" href="#L1748">1748</a>                 }
-<a class="jxr_linenumber" name="L1749" href="#L1749">1749</a>             }
-<a class="jxr_linenumber" name="L1750" href="#L1750">1750</a>         }
-<a class="jxr_linenumber" name="L1751" href="#L1751">1751</a> 
-<a class="jxr_linenumber" name="L1752" href="#L1752">1752</a>         <em class="jxr_comment">//done encryption; now test decryption:</em>
-<a class="jxr_linenumber" name="L1753" href="#L1753">1753</a>         {
-<a class="jxr_linenumber" name="L1754" href="#L1754">1754</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
-<a class="jxr_linenumber" name="L1755" href="#L1755">1755</a>             securityProperties.loadDecryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"receiver.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
-<a class="jxr_linenumber" name="L1756" href="#L1756">1756</a>             securityProperties.setCallbackHandler(<strong class="jxr_keyword">new</strong> <a href="../../../../../org/apache/wss4j/stax/test/CallbackHandlerImpl.html">CallbackHandlerImpl</a>());
-<a class="jxr_linenumber" name="L1757" href="#L1757">1757</a> 
-<a class="jxr_linenumber" name="L1758" href="#L1758">1758</a>             WSSecurityEventConstants.Event[] expectedSecurityEvents = <strong class="jxr_keyword">new</strong> WSSecurityEventConstants.Event[]{
+<a class="jxr_linenumber" name="L1228" href="#L1228">1228</a> <em class="jxr_comment">    public void testEncDecryptionKeyIdentifierBinarySecurityTokenEmbedded() throws Exception {</em>
+<a class="jxr_linenumber" name="L1229" href="#L1229">1229</a> 
+<a class="jxr_linenumber" name="L1230" href="#L1230">1230</a> <em class="jxr_comment">        ByteArrayOutputStream baos;</em>
+<a class="jxr_linenumber" name="L1231" href="#L1231">1231</a> <em class="jxr_comment">        {</em>
+<a class="jxr_linenumber" name="L1232" href="#L1232">1232</a> <em class="jxr_comment">            WSSSecurityProperties securityProperties = new WSSSecurityProperties();</em>
+<a class="jxr_linenumber" name="L1233" href="#L1233">1233</a> <em class="jxr_comment">            WSSConstants.Action[] actions = new WSSConstants.Action[]{WSSConstants.ENCRYPT};</em>
+<a class="jxr_linenumber" name="L1234" href="#L1234">1234</a> <em class="jxr_comment">            securityProperties.setActions(actions);</em>
+<a class="jxr_linenumber" name="L1235" href="#L1235">1235</a> <em class="jxr_comment">            securityProperties.loadEncryptionKeystore(this.getClass().getClassLoader().getResource("transmitter.jks"), "default".toCharArray());</em>
+<a class="jxr_linenumber" name="L1236" href="#L1236">1236</a> <em class="jxr_comment">            securityProperties.setEncryptionUser("receiver");</em>
+<a class="jxr_linenumber" name="L1237" href="#L1237">1237</a> <em class="jxr_comment">            securityProperties.setEncryptionKeyIdentifierType(WSSConstants.WSSKeyIdentifierType.BST_EMBEDDED);</em>
+<a class="jxr_linenumber" name="L1238" href="#L1238">1238</a> 
+<a class="jxr_linenumber" name="L1239" href="#L1239">1239</a> <em class="jxr_comment">            InputStream sourceDocument = this.getClass().getClassLoader().getResourceAsStream("testdata/plain-soap-1.1.xml");</em>
+<a class="jxr_linenumber" name="L1240" href="#L1240">1240</a> 
+<a class="jxr_linenumber" name="L1241" href="#L1241">1241</a> <em class="jxr_comment">            baos = doOutboundSecurity(securityProperties, sourceDocument);</em>
+<a class="jxr_linenumber" name="L1242" href="#L1242">1242</a> 
+<a class="jxr_linenumber" name="L1243" href="#L1243">1243</a> <em class="jxr_comment">            Document document = documentBuilderFactory.newDocumentBuilder().parse(new ByteArrayInputStream(baos.toByteArray()));</em>
+<a class="jxr_linenumber" name="L1244" href="#L1244">1244</a> <em class="jxr_comment">            NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());</em>
+<a class="jxr_linenumber" name="L1245" href="#L1245">1245</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());</em>
+<a class="jxr_linenumber" name="L1246" href="#L1246">1246</a> 
+<a class="jxr_linenumber" name="L1247" href="#L1247">1247</a> <em class="jxr_comment">            XPathExpression xPathExpression = getXPath("/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:Reference/wsse:BinarySecurityToken");</em>
+<a class="jxr_linenumber" name="L1248" href="#L1248">1248</a> <em class="jxr_comment">            Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);</em>
+<a class="jxr_linenumber" name="L1249" href="#L1249">1249</a> <em class="jxr_comment">            Assert.assertNotNull(node);</em>
+<a class="jxr_linenumber" name="L1250" href="#L1250">1250</a> 
+<a class="jxr_linenumber" name="L1251" href="#L1251">1251</a> <em class="jxr_comment">            nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_DataReference.getNamespaceURI(), WSSConstants.TAG_xenc_DataReference.getLocalPart());</em>
+<a class="jxr_linenumber" name="L1252" href="#L1252">1252</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.getLength(), 1);</em>
+<a class="jxr_linenumber" name="L1253" href="#L1253">1253</a> 
+<a class="jxr_linenumber" name="L1254" href="#L1254">1254</a> <em class="jxr_comment">            nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());</em>
+<a class="jxr_linenumber" name="L1255" href="#L1255">1255</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.getLength(), 1);</em>
+<a class="jxr_linenumber" name="L1256" href="#L1256">1256</a> <em class="jxr_comment">        }</em>
+<a class="jxr_linenumber" name="L1257" href="#L1257">1257</a> 
+<a class="jxr_linenumber" name="L1258" href="#L1258">1258</a> <em class="jxr_comment">        //done encryption; now test decryption:</em>
+<a class="jxr_linenumber" name="L1259" href="#L1259">1259</a> <em class="jxr_comment">        {</em>
+<a class="jxr_linenumber" name="L1260" href="#L1260">1260</a> <em class="jxr_comment">            WSSSecurityProperties securityProperties = new WSSSecurityProperties();</em>
+<a class="jxr_linenumber" name="L1261" href="#L1261">1261</a> <em class="jxr_comment">            securityProperties.loadDecryptionKeystore(this.getClass().getClassLoader().getResource("receiver.jks"), "default".toCharArray());</em>
+<a class="jxr_linenumber" name="L1262" href="#L1262">1262</a> <em class="jxr_comment">            securityProperties.setCallbackHandler(new org.apache.wss4j.stax.test.CallbackHandlerImpl());</em>
+<a class="jxr_linenumber" name="L1263" href="#L1263">1263</a> <em class="jxr_comment">            Document document = doInboundSecurity(securityProperties, new ByteArrayInputStream(baos.toByteArray()));</em>
+<a class="jxr_linenumber" name="L1264" href="#L1264">1264</a> 
+<a class="jxr_linenumber" name="L1265" href="#L1265">1265</a> <em class="jxr_comment">            //header element must still be there</em>
+<a class="jxr_linenumber" name="L1266" href="#L1266">1266</a> <em class="jxr_comment">            NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());</em>
+<a class="jxr_linenumber" name="L1267" href="#L1267">1267</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.getLength(), 1);</em>
+<a class="jxr_linenumber" name="L1268" href="#L1268">1268</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());</em>
+<a class="jxr_linenumber" name="L1269" href="#L1269">1269</a> 
+<a class="jxr_linenumber" name="L1270" href="#L1270">1270</a> <em class="jxr_comment">            //no encrypted content</em>
+<a class="jxr_linenumber" name="L1271" href="#L1271">1271</a> <em class="jxr_comment">            nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedData.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedData.getLocalPart());</em>
+<a class="jxr_linenumber" name="L1272" href="#L1272">1272</a> <em class="jxr_comment">            Assert.assertEquals(nodeList.getLength(), 0);</em>
+<a class="jxr_linenumber" name="L1273" href="#L1273">1273</a> <em class="jxr_comment">        }</em>
+<a class="jxr_linenumber" name="L1274" href="#L1274">1274</a> <em class="jxr_comment">    }*/</em>
+<a class="jxr_linenumber" name="L1275" href="#L1275">1275</a> 
+<a class="jxr_linenumber" name="L1276" href="#L1276">1276</a>     @Test
+<a class="jxr_linenumber" name="L1277" href="#L1277">1277</a>     <strong class="jxr_keyword">public</strong> <strong class="jxr_keyword">void</strong> testEncDecryptionKeyIdentifierX509KeyOutbound() <strong class="jxr_keyword">throws</strong> Exception {
+<a class="jxr_linenumber" name="L1278" href="#L1278">1278</a> 
+<a class="jxr_linenumber" name="L1279" href="#L1279">1279</a>         ByteArrayOutputStream baos;
+<a class="jxr_linenumber" name="L1280" href="#L1280">1280</a>         {
+<a class="jxr_linenumber" name="L1281" href="#L1281">1281</a>             WSSSecurityProperties securityProperties = <strong class="jxr_keyword">new</strong> WSSSecurityProperties();
+<a class="jxr_linenumber" name="L1282" href="#L1282">1282</a>             List&lt;WSSConstants.Action&gt; actions = <strong class="jxr_keyword">new</strong> ArrayList&lt;WSSConstants.Action&gt;();
+<a class="jxr_linenumber" name="L1283" href="#L1283">1283</a>             actions.add(WSSConstants.ENCRYPT);
+<a class="jxr_linenumber" name="L1284" href="#L1284">1284</a>             securityProperties.setActions(actions);
+<a class="jxr_linenumber" name="L1285" href="#L1285">1285</a>             securityProperties.loadEncryptionKeystore(<strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResource(<span class="jxr_string">"transmitter.jks"</span>), <span class="jxr_string">"default"</span>.toCharArray());
+<a class="jxr_linenumber" name="L1286" href="#L1286">1286</a>             securityProperties.setEncryptionUser(<span class="jxr_string">"receiver"</span>);
+<a class="jxr_linenumber" name="L1287" href="#L1287">1287</a>             securityProperties.setEncryptionKeyIdentifier(WSSecurityTokenConstants.KeyIdentifier_X509KeyIdentifier);
+<a class="jxr_linenumber" name="L1288" href="#L1288">1288</a>             InputStream sourceDocument = <strong class="jxr_keyword">this</strong>.getClass().getClassLoader().getResourceAsStream(<span class="jxr_string">"testdata/plain-soap-1.1.xml"</span>);
+<a class="jxr_linenumber" name="L1289" href="#L1289">1289</a> 
+<a class="jxr_linenumber" name="L1290" href="#L1290">1290</a>             baos = doOutboundSecurity(securityProperties, sourceDocument);
+<a class="jxr_linenumber" name="L1291" href="#L1291">1291</a> 
+<a class="jxr_linenumber" name="L1292" href="#L1292">1292</a>             Document document = documentBuilderFactory.newDocumentBuilder().parse(<strong class="jxr_keyword">new</strong> ByteArrayInputStream(baos.toByteArray()));
+<a class="jxr_linenumber" name="L1293" href="#L1293">1293</a>             NodeList nodeList = document.getElementsByTagNameNS(WSSConstants.TAG_xenc_EncryptedKey.getNamespaceURI(), WSSConstants.TAG_xenc_EncryptedKey.getLocalPart());
+<a class="jxr_linenumber" name="L1294" href="#L1294">1294</a>             Assert.assertEquals(nodeList.item(0).getParentNode().getLocalName(), WSSConstants.TAG_wsse_Security.getLocalPart());
+<a class="jxr_linenumber" name="L1295" href="#L1295">1295</a> 
+<a class="jxr_linenumber" name="L1296" href="#L1296">1296</a>             XPathExpression xPathExpression = getXPath(<span class="jxr_string">"/soap:Envelope/soap:Header/wsse:Security/xenc:EncryptedKey/dsig:KeyInfo/wsse:SecurityTokenReference/wsse:KeyIdentifier[@ValueType='http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3']"</span>);
+<a class="jxr_linenumber" name="L1297" href="#L1297">1297</a>             Node node = (Node) xPathExpression.evaluate(document, XPathConstants.NODE);
+<a class="jxr_linenumber" name="L1298" href="#L1298">1298</a>             Assert.assertNotNull(node);
+<a class="jxr_linenumber" name="L1299" href="#L1299">1299</a> 

[... 2260 lines stripped ...]