You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2013/06/17 17:17:54 UTC
[1/2] git commit: Added an unit test of WSSecurity with CXF_MESSAGE
dataformat
Updated Branches:
refs/heads/master 070c795ca -> 0db69352e
Added an unit test of WSSecurity with CXF_MESSAGE dataformat
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/0db69352
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/0db69352
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/0db69352
Branch: refs/heads/master
Commit: 0db69352e38a9d11393e8c1aba293296507dd597
Parents: da8095f
Author: Willem Jiang <ni...@apache.org>
Authored: Mon Jun 17 23:16:07 2013 +0800
Committer: Willem Jiang <ni...@apache.org>
Committed: Mon Jun 17 23:16:59 2013 +0800
----------------------------------------------------------------------
components/camel-cxf/pom.xml | 10 ++
.../cxf/wssecurity/camel/MyProcessor.java | 22 +++
.../wssecurity/camel/WSSecurityRouteTest.java | 62 +++++++++
.../component/cxf/wssecurity/client/Client.java | 104 ++++++++++++++
.../wssecurity/client/UTPasswordCallback.java | 68 ++++++++++
.../cxf/wssecurity/server/CxfServer.java | 105 +++++++++++++++
.../cxf/wssecurity/server/GreeterImpl.java | 60 +++++++++
.../wssecurity/server/UTPasswordCallback.java | 68 ++++++++++
.../src/test/resources/hello_world_wssec.wsdl | 135 +++++++++++++++++++
.../cxf/wssecurity/camel/camel-context.xml | 93 +++++++++++++
.../component/cxf/wssecurity/client/wssec.xml | 45 +++++++
.../component/cxf/wssecurity/server/wssec.xml | 45 +++++++
.../wssecurity/etc/Client_Encrypt.properties | 5 +
.../wssecurity/etc/Client_Sign.properties | 6 +
.../wssecurity/etc/Server_Decrypt.properties | 5 +
.../wssecurity/etc/Server_SignVerf.properties | 5 +
.../wssecurity/keystore/client-keystore.jks | Bin 0 -> 1344 bytes
.../wssecurity/keystore/client-truststore.jks | Bin 0 -> 639 bytes
.../wssecurity/keystore/server-keystore.jks | Bin 0 -> 1345 bytes
.../wssecurity/keystore/server-truststore.jks | Bin 0 -> 639 bytes
20 files changed, 838 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/pom.xml
----------------------------------------------------------------------
diff --git a/components/camel-cxf/pom.xml b/components/camel-cxf/pom.xml
index b95f7ea..97b3711 100644
--- a/components/camel-cxf/pom.xml
+++ b/components/camel-cxf/pom.xml
@@ -236,6 +236,13 @@
<version>${cxf-version}</version>
<scope>test</scope>
</dependency>
+
+ <dependency>
+ <groupId>org.apache.cxf</groupId>
+ <artifactId>cxf-rt-ws-security</artifactId>
+ <version>${cxf-version}</version>
+ <scope>test</scope>
+ </dependency>
<dependency>
<groupId>org.springframework</groupId>
@@ -340,6 +347,9 @@
<wsdl>${basedir}/src/test/resources/mtom.wsdl</wsdl>
</wsdlOption>
<wsdlOption>
+ <wsdl>${basedir}/src/test/resources/hello_world_wssec.wsdl</wsdl>
+ </wsdlOption>
+ <wsdlOption>
<wsdl>${basedir}/src/test/resources/MultiPartTest.wsdl</wsdl>
</wsdlOption>
<wsdlOption>
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/camel/MyProcessor.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/camel/MyProcessor.java b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/camel/MyProcessor.java
new file mode 100644
index 0000000..06bc461
--- /dev/null
+++ b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/camel/MyProcessor.java
@@ -0,0 +1,22 @@
+package org.apache.camel.component.cxf.wssecurity.camel;
+
+import java.io.InputStream;
+
+import javax.xml.soap.MessageFactory;
+import javax.xml.soap.SOAPMessage;
+
+import org.apache.camel.Exchange;
+import org.apache.camel.Processor;
+
+public class MyProcessor implements Processor {
+
+ @Override
+ public void process(Exchange exchange) throws Exception {
+ // take out the soap message as an inputStream
+ InputStream is = exchange.getIn().getBody(InputStream.class);
+ // put it as an soap message
+ SOAPMessage message = MessageFactory.newInstance().createMessage(null, is);
+ exchange.getOut().setBody(message);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/camel/WSSecurityRouteTest.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/camel/WSSecurityRouteTest.java b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/camel/WSSecurityRouteTest.java
new file mode 100644
index 0000000..b7c55e7
--- /dev/null
+++ b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/camel/WSSecurityRouteTest.java
@@ -0,0 +1,62 @@
+package org.apache.camel.component.cxf.wssecurity.camel;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.component.cxf.CXFTestSupport;
+import org.apache.camel.component.cxf.wssecurity.client.Client;
+import org.apache.camel.component.cxf.wssecurity.server.CxfServer;
+import org.apache.camel.hello_world_soap_http.Greeter;
+import org.apache.camel.spring.SpringCamelContext;
+import org.apache.camel.test.junit4.CamelTestSupport;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.springframework.context.support.AbstractXmlApplicationContext;
+import org.springframework.context.support.ClassPathXmlApplicationContext;
+
+public class WSSecurityRouteTest extends CamelTestSupport {
+ protected CxfServer cxfServer;
+ protected AbstractXmlApplicationContext applicationContext;
+
+ @Before
+ public void setUp() throws Exception {
+ //start the back end service
+ int port = CXFTestSupport.getPort1();
+ cxfServer = new CxfServer(port);
+ applicationContext = createApplicationContext();
+ super.setUp();
+ }
+
+ @After
+ public void shutdownService() {
+ if (cxfServer != null) {
+ cxfServer.stop();
+ }
+ if (applicationContext != null) {
+ applicationContext.stop();
+ }
+ }
+
+
+ @Override
+ protected CamelContext createCamelContext() throws Exception {
+ return SpringCamelContext.springCamelContext(applicationContext);
+ }
+
+
+ protected ClassPathXmlApplicationContext createApplicationContext() {
+ return new ClassPathXmlApplicationContext("org/apache/camel/component/cxf/wssecurity/camel/camel-context.xml");
+ }
+
+ protected String getRouterAddress() {
+ return "http://localhost:" + CXFTestSupport.getPort2() + "/WSSecurityRouteTest/GreeterPort";
+ }
+
+ @Test
+ public void testInvokeService() throws Exception {
+ Client client = new Client(getRouterAddress());
+ Greeter greeter = client.getClient();
+ assertEquals("Get a wrong response", "Hello Security", greeter.greetMe("Security"));
+ }
+
+
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/client/Client.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/client/Client.java b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/client/Client.java
new file mode 100644
index 0000000..3c18e00
--- /dev/null
+++ b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/client/Client.java
@@ -0,0 +1,104 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.camel.component.cxf.wssecurity.client;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.camel.hello_world_soap_http.Greeter;
+import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
+import org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor;
+import org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor;
+
+
+public final class Client {
+
+ //private static final String WSU_NS
+ // = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
+ private JaxWsProxyFactoryBean bean;
+
+ public Client(String address) throws Exception {
+ bean = new JaxWsProxyFactoryBean();
+ bean.setAddress(address);
+ bean.getInInterceptors().add(getWSS4JInInterceptor());
+ bean.getOutInterceptors().add(getWSS4JOutInterceptor());
+ bean.setServiceClass(Greeter.class);
+ }
+
+ public Greeter getClient() {
+ return bean.create(Greeter.class);
+ }
+
+
+ public static WSS4JOutInterceptor getWSS4JOutInterceptor() throws Exception {
+
+ Map<String, Object> outProps = new HashMap<String, Object>();
+ outProps.put("action", "Signature");
+ // outProps.put("action", "UsernameToken Timestamp Signature Encrypt");
+
+ outProps.put("passwordType", "PasswordDigest");
+ outProps.put("user", "clientx509v1");
+
+ // If you are using the patch WSS-194, then uncomment below two lines
+ // and comment the above "user" prop line.
+ // outProps.put("user", "abcd");
+ // outProps.put("signatureUser", "clientx509v1");
+
+ outProps.put("passwordCallbackClass",
+ "org.apache.camel.component.cxf.wssecurity.client.UTPasswordCallback");
+
+ // outProps.put("encryptionUser", "serverx509v1");
+ // outProps.put("encryptionPropFile",
+ // "wssecurity/etc/Client_Encrypt.properties");
+ // outProps.put("encryptionKeyIdentifier", "IssuerSerial");
+ // outProps.put("encryptionParts",
+ // "{Element}{" + WSU_NS + "}Timestamp;"
+ // + "{Content}{http://schemas.xmlsoap.org/soap/envelope/}Body");
+
+ outProps.put("signaturePropFile", "wssecurity/etc/Client_Sign.properties");
+ outProps.put("signatureKeyIdentifier", "DirectReference");
+ outProps.put("signatureParts",
+ // "{Element}{" + WSU_NS + "}Timestamp;"
+ "{Element}{http://schemas.xmlsoap.org/soap/envelope/}Body");
+
+ return new WSS4JOutInterceptor(outProps);
+ }
+
+ public static WSS4JInInterceptor getWSS4JInInterceptor() throws Exception {
+
+ Map<String, Object> inProps = new HashMap<String, Object>();
+
+ inProps.put("action", "Signature");
+ // inProps.put("action", "UsernameToken Timestamp Signature Encrypt");
+ // inProps.put("passwordType", "PasswordText");
+ // inProps.put("passwordCallbackClass",
+ // "org.apache.camel.component.cxf.wssecurity.client.UTPasswordCallback");
+
+ // inProps.put("decryptionPropFile",
+ // "wssecurity/etc/Client_Sign.properties");
+ // inProps.put("encryptionKeyIdentifier", "IssuerSerial");
+
+ inProps.put("signaturePropFile", "wssecurity/etc/Client_Encrypt.properties");
+ inProps.put("signatureKeyIdentifier", "DirectReference");
+
+ return new WSS4JInInterceptor(inProps);
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/client/UTPasswordCallback.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/client/UTPasswordCallback.java b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/client/UTPasswordCallback.java
new file mode 100644
index 0000000..b4fdaf0
--- /dev/null
+++ b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/client/UTPasswordCallback.java
@@ -0,0 +1,68 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.camel.component.cxf.wssecurity.client;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+
+import org.apache.ws.security.WSPasswordCallback;
+
+/**
+ */
+
+public class UTPasswordCallback implements CallbackHandler {
+
+ private Map<String, String> passwords =
+ new HashMap<String, String>();
+
+ public UTPasswordCallback() {
+ passwords.put("Alice", "ecilA");
+ passwords.put("abcd", "dcba");
+ passwords.put("clientx509v1", "storepassword");
+ passwords.put("serverx509v1", "storepassword");
+ }
+
+ /**
+ * Here, we attempt to get the password from the private
+ * alias/passwords map.
+ */
+ public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
+ for (int i = 0; i < callbacks.length; i++) {
+ WSPasswordCallback pc = (WSPasswordCallback)callbacks[i];
+
+ String pass = passwords.get(pc.getIdentifier());
+ if (pass != null) {
+ pc.setPassword(pass);
+ return;
+ }
+ }
+ }
+
+ /**
+ * Add an alias/password pair to the callback mechanism.
+ */
+ public void setAliasPassword(String alias, String password) {
+ passwords.put(alias, password);
+ }
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/CxfServer.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/CxfServer.java b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/CxfServer.java
new file mode 100644
index 0000000..ff7ddd3
--- /dev/null
+++ b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/CxfServer.java
@@ -0,0 +1,105 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.camel.component.cxf.wssecurity.server;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.cxf.endpoint.Server;
+import org.apache.cxf.jaxws.JaxWsServerFactoryBean;
+import org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor;
+import org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor;
+
+public class CxfServer {
+
+ //private static final String WSU_NS
+ // = "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
+
+ private String address;
+
+ private Server server;
+
+ public CxfServer(int port) throws Exception {
+ Object implementor = new GreeterImpl();
+ address = "http://localhost:" + port + "/WSSecurityRouteTest/GreeterPort";
+ JaxWsServerFactoryBean bean = new JaxWsServerFactoryBean();
+ bean.setAddress(address);
+ bean.setServiceBean(implementor);
+ bean.getInInterceptors().add(getWSS4JInInterceptor());
+ bean.getOutInterceptors().add(getWSS4JOutInterceptor());
+ server = bean.create();
+ }
+
+ public void stop() {
+ if (server != null) {
+ server.start();
+ }
+ }
+
+ public static WSS4JOutInterceptor getWSS4JOutInterceptor() throws Exception {
+
+ Map<String, Object> outProps = new HashMap<String, Object>();
+ outProps.put("action", "Signature");
+ //outProps.put("action", "UsernameToken Timestamp Signature Encrypt");
+
+ outProps.put("passwordType", "PasswordText");
+ outProps.put("user", "serverx509v1");
+ outProps.put("passwordCallbackClass", "org.apache.camel.component.cxf.wssecurity.server.UTPasswordCallback");
+
+ //If you are using the patch WSS-194, then uncomment below two lines and
+ //comment the above "user" prop line.
+ //outProps.put("user", "Alice");
+ //outProps.put("signatureUser", "serverx509v1");
+
+ //outProps.put("encryptionUser", "clientx509v1");
+ //outProps.put("encryptionPropFile", "wssecurity/etc/Server_SignVerf.properties");
+ //outProps.put("encryptionKeyIdentifier", "IssuerSerial");
+ //outProps.put("encryptionParts", "{Element}{" + WSU_NS + "}Timestamp;"
+ // + "{Content}{http://schemas.xmlsoap.org/soap/envelope/}Body");
+
+ outProps.put("signaturePropFile", "wssecurity/etc/Server_Decrypt.properties");
+ outProps.put("signatureKeyIdentifier", "DirectReference");
+ outProps.put("signatureParts", //"{Element}{" + WSU_NS + "}Timestamp;"
+ "{Element}{http://schemas.xmlsoap.org/soap/envelope/}Body");
+
+ return new WSS4JOutInterceptor(outProps);
+ }
+
+ public static WSS4JInInterceptor getWSS4JInInterceptor() throws Exception {
+
+ Map<String, Object> inProps = new HashMap<String, Object>();
+
+ //inProps.put("action", "UsernameToken Timestamp Signature Encrypt");
+ inProps.put("action", "Signature");
+ inProps.put("passwordType", "PasswordDigest");
+ inProps.put("passwordCallbackClass", "org.apache.camel.component.cxf.wssecurity.server.UTPasswordCallback");
+
+ //inProps.put("decryptionPropFile", "wssecurity/etc/Server_Decrypt.properties");
+ //inProps.put("encryptionKeyIdentifier", "IssuerSerial");
+
+ inProps.put("signaturePropFile", "wssecurity/etc/Server_SignVerf.properties");
+ inProps.put("signatureKeyIdentifier", "DirectReference");
+
+ return new WSS4JInInterceptor(inProps);
+
+ }
+
+
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/GreeterImpl.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/GreeterImpl.java b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/GreeterImpl.java
new file mode 100644
index 0000000..ae07145
--- /dev/null
+++ b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/GreeterImpl.java
@@ -0,0 +1,60 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.camel.component.cxf.wssecurity.server;
+
+import java.util.logging.Logger;
+import org.apache.camel.hello_world_soap_http.Greeter;
+
+@javax.jws.WebService(serviceName = "GreeterService",
+ portName = "GreeterPort",
+ endpointInterface = "org.apache.camel.hello_world_soap_http.Greeter",
+ targetNamespace = "http://camel.apache.org/hello_world_soap_http")
+
+public class GreeterImpl implements Greeter {
+
+ private static final Logger LOG =
+ Logger.getLogger(GreeterImpl.class.getPackage().getName());
+
+ /* (non-Javadoc)
+ * @see org.apache.cxf.hello_world_soap_http.Greeter#greetMe(java.lang.String)
+ */
+ public String greetMe(String me) {
+ LOG.info("Executing operation greetMe");
+ LOG.info("Message received: " + me );
+ return "Hello " + me;
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.cxf.hello_world_soap_http.Greeter#greetMeOneWay(java.lang.String)
+ */
+ public void greetMeOneWay(String me) {
+ LOG.info("Executing operation greetMeOneWay");
+ LOG.info("Hello there " + me);
+ }
+
+ /* (non-Javadoc)
+ * @see org.apache.cxf.hello_world_soap_http.Greeter#sayHi()
+ */
+ public String sayHi() {
+ LOG.info("Executing operation sayHi");
+ System.out.println("Executing operation sayHi\n");
+ return "Bonjour";
+ }
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/UTPasswordCallback.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/UTPasswordCallback.java b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/UTPasswordCallback.java
new file mode 100644
index 0000000..60bf99b
--- /dev/null
+++ b/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/wssecurity/server/UTPasswordCallback.java
@@ -0,0 +1,68 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.camel.component.cxf.wssecurity.server;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+
+import org.apache.ws.security.WSPasswordCallback;
+
+/**
+ */
+
+public class UTPasswordCallback implements CallbackHandler {
+
+ private Map<String, String> passwords =
+ new HashMap<String, String>();
+
+ public UTPasswordCallback() {
+ passwords.put("Alice", "ecilA");
+ passwords.put("abcd", "dcba");
+ passwords.put("clientx509v1", "storepassword");
+ passwords.put("serverx509v1", "storepassword");
+ }
+
+ /**
+ * Here, we attempt to get the password from the private
+ * alias/passwords map.
+ */
+ public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
+ for (int i = 0; i < callbacks.length; i++) {
+ WSPasswordCallback pc = (WSPasswordCallback)callbacks[i];
+
+ String pass = passwords.get(pc.getIdentifier());
+ if (pass != null) {
+ pc.setPassword(pass);
+ return;
+ }
+ }
+ }
+
+ /**
+ * Add an alias/password pair to the callback mechanism.
+ */
+ public void setAliasPassword(String alias, String password) {
+ passwords.put(alias, password);
+ }
+}
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/hello_world_wssec.wsdl
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/hello_world_wssec.wsdl b/components/camel-cxf/src/test/resources/hello_world_wssec.wsdl
new file mode 100644
index 0000000..a19ccbe
--- /dev/null
+++ b/components/camel-cxf/src/test/resources/hello_world_wssec.wsdl
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<wsdl:definitions name="HelloWorld" targetNamespace="http://camel.apache.org/hello_world_soap_http"
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://camel.apache.org/hello_world_soap_http"
+ xmlns:x1="http://camel.apache.org/hello_world_soap_http/types"
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema">
+ <wsdl:types>
+ <schema targetNamespace="http://camel.apache.org/hello_world_soap_http/types"
+ xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+ <element name="sayHi">
+ <complexType/>
+ </element>
+ <element name="sayHiResponse">
+ <complexType>
+ <sequence>
+ <element name="responseType" type="xsd:string"/>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="greetMe">
+ <complexType>
+ <sequence>
+ <element name="requestType" type="xsd:string"/>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="greetMeResponse">
+ <complexType>
+ <sequence>
+ <element name="responseType" type="xsd:string"/>
+ </sequence>
+ </complexType>
+ </element>
+ <element name="greetMeOneWay">
+ <complexType>
+ <sequence>
+ <element name="requestType" type="xsd:string"/>
+ </sequence>
+ </complexType>
+ </element>
+ </schema>
+ </wsdl:types>
+
+ <wsdl:message name="sayHiRequest">
+ <wsdl:part element="x1:sayHi" name="in"/>
+ </wsdl:message>
+ <wsdl:message name="sayHiResponse">
+ <wsdl:part element="x1:sayHiResponse" name="out"/>
+ </wsdl:message>
+ <wsdl:message name="greetMeRequest">
+ <wsdl:part element="x1:greetMe" name="in"/>
+ </wsdl:message>
+ <wsdl:message name="greetMeResponse">
+ <wsdl:part element="x1:greetMeResponse" name="out"/>
+ </wsdl:message>
+ <wsdl:message name="greetMeOneWayRequest">
+ <wsdl:part element="x1:greetMeOneWay" name="in"/>
+ </wsdl:message>
+
+ <wsdl:portType name="Greeter">
+ <wsdl:operation name="sayHi">
+ <wsdl:input message="tns:sayHiRequest" name="sayHiRequest"/>
+ <wsdl:output message="tns:sayHiResponse" name="sayHiResponse"/>
+ </wsdl:operation>
+
+ <wsdl:operation name="greetMe">
+ <wsdl:input message="tns:greetMeRequest" name="greetMeRequest"/>
+ <wsdl:output message="tns:greetMeResponse" name="greetMeResponse"/>
+ </wsdl:operation>
+
+ <wsdl:operation name="greetMeOneWay">
+ <wsdl:input message="tns:greetMeOneWayRequest" name="greetMeOneWayRequest"/>
+ </wsdl:operation>
+
+ </wsdl:portType>
+
+ <wsdl:binding name="Greeter_SOAPBinding" type="tns:Greeter">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+
+ <wsdl:operation name="sayHi">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="sayHiRequest">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="sayHiResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="greetMe">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="greetMeRequest">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ <wsdl:output name="greetMeResponse">
+ <soap:body use="literal"/>
+ </wsdl:output>
+ </wsdl:operation>
+
+ <wsdl:operation name="greetMeOneWay">
+ <soap:operation soapAction="" style="document"/>
+ <wsdl:input name="greetMeOneWayRequest">
+ <soap:body use="literal"/>
+ </wsdl:input>
+ </wsdl:operation>
+ </wsdl:binding>
+
+ <wsdl:service name="GreeterService">
+ <wsdl:port binding="tns:Greeter_SOAPBinding" name="GreeterPort">
+ <soap:address location="http://localhost:8000/SoapContext/GreeterPort"/>
+ <wswa:UsingAddressing xmlns:wswa="http://www.w3.org/2005/02/addressing/wsdl"/>
+ </wsdl:port>
+ </wsdl:service>
+</wsdl:definitions>
+
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/camel/camel-context.xml
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/camel/camel-context.xml b/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/camel/camel-context.xml
new file mode 100644
index 0000000..1398243
--- /dev/null
+++ b/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/camel/camel-context.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:camel="http://camel.apache.org/schema/spring"
+ xmlns:cxf="http://camel.apache.org/schema/cxf"
+ xmlns:cxf-core="http://cxf.apache.org/core"
+ xmlns:wsa="http://cxf.apache.org/ws/addressing"
+ xsi:schemaLocation="
+ http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
+ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd
+ http://camel.apache.org/schema/cxf http://camel.apache.org/schema/cxf/camel-cxf.xsd">
+
+ <cxf-core:bus>
+ <cxf-core:features>
+ <cxf-core:logging/>
+ <!-- wsa:addressing/-->
+ </cxf-core:features>
+ </cxf-core:bus>
+
+ <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
+
+ <import resource="classpath:META-INF/cxf/cxf.xml"/>
+
+
+ <cxf:cxfEndpoint id="route"
+ address="http://localhost:${CXFTestSupport.port2}/WSSecurityRouteTest/GreeterPort"
+ serviceClass="org.apache.camel.hello_world_soap_http.Greeter">
+ <cxf:properties>
+ <entry key="dataFormat" value="CXF_MESSAGE" />
+ </cxf:properties>
+
+ <cxf:inInterceptors>
+ <ref bean="wss4jInInterceptor" />
+ </cxf:inInterceptors>
+
+ </cxf:cxfEndpoint>
+
+ <cxf:cxfEndpoint id="service"
+ address="http://localhost:${CXFTestSupport.port1}/WSSecurityRouteTest/GreeterPort"
+ serviceClass="org.apache.camel.hello_world_soap_http.Greeter">
+ <cxf:properties>
+ <entry key="dataFormat" value="CXF_MESSAGE" />
+ </cxf:properties>
+
+ </cxf:cxfEndpoint>
+
+
+ <camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
+ <route errorHandlerRef="noErrorHandler">
+ <from uri="cxf:bean:route" />
+ <process ref="myProcessor" />
+ <to uri="cxf:bean:service"/>
+ <process ref="myProcessor" />
+ </route>
+
+ </camelContext>
+
+ <bean id="noErrorHandler" class="org.apache.camel.builder.NoErrorHandlerBuilder"/>
+ <bean id="myProcessor" class="org.apache.camel.component.cxf.wssecurity.camel.MyProcessor"/>
+
+ <bean id="wss4jInInterceptor" class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
+ <constructor-arg>
+ <map>
+ <entry key="action" value="Signature" />
+ <!-- entry key="passwordCallbackClass" value="org.apache.camel.component.cxf.wssecurity.server.UTPasswordCallback" />
+ <entry key="passwordType" value="PasswordDigest" /-->
+ <!-- entry key="decryptionPropFile" value="wssecurity/etc/Server_Decrypt.properties" />
+ <entry key="encryptionKeyIdentifier" value="IssuerSerial" /-->
+
+ <entry key="signaturePropFile" value="wssecurity/etc/Server_SignVerf.properties"/>
+ <entry key="signatureKeyIdentifier" value="DirectReference"/>
+ </map>
+ </constructor-arg>
+ </bean>
+
+</beans>
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/client/wssec.xml
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/client/wssec.xml b/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/client/wssec.xml
new file mode 100644
index 0000000..6526527
--- /dev/null
+++ b/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/client/wssec.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:cxf="http://cxf.apache.org/core"
+ xmlns:wsa="http://cxf.apache.org/ws/addressing"
+ xmlns:http="http://cxf.apache.org/transports/http/configuration"
+ xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xsi:schemaLocation="
+ http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
+ http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd
+ http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
+ http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <cxf:bus>
+ <cxf:features>
+ <cxf:logging/>
+ <!-- wsa:addressing/-->
+ </cxf:features>
+ </cxf:bus>
+
+ <http:conduit name="{http://cxf.apache.org/hello_world_soap_http}GreeterPort.http-conduit">
+ <http:client DecoupledEndpoint="http://localhost:9990/decoupled_endpoint"/>
+ </http:conduit>
+
+</beans>
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/server/wssec.xml
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/server/wssec.xml b/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/server/wssec.xml
new file mode 100644
index 0000000..6526527
--- /dev/null
+++ b/components/camel-cxf/src/test/resources/org/apache/camel/component/cxf/wssecurity/server/wssec.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:cxf="http://cxf.apache.org/core"
+ xmlns:wsa="http://cxf.apache.org/ws/addressing"
+ xmlns:http="http://cxf.apache.org/transports/http/configuration"
+ xmlns:wsrm-policy="http://schemas.xmlsoap.org/ws/2005/02/rm/policy"
+ xmlns:wsrm-mgr="http://cxf.apache.org/ws/rm/manager"
+ xsi:schemaLocation="
+ http://cxf.apache.org/core http://cxf.apache.org/schemas/core.xsd
+ http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd
+ http://schemas.xmlsoap.org/ws/2005/02/rm/policy http://schemas.xmlsoap.org/ws/2005/02/rm/wsrm-policy.xsd
+ http://cxf.apache.org/ws/rm/manager http://cxf.apache.org/schemas/configuration/wsrm-manager.xsd
+ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
+
+ <cxf:bus>
+ <cxf:features>
+ <cxf:logging/>
+ <!-- wsa:addressing/-->
+ </cxf:features>
+ </cxf:bus>
+
+ <http:conduit name="{http://cxf.apache.org/hello_world_soap_http}GreeterPort.http-conduit">
+ <http:client DecoupledEndpoint="http://localhost:9990/decoupled_endpoint"/>
+ </http:conduit>
+
+</beans>
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/wssecurity/etc/Client_Encrypt.properties
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/wssecurity/etc/Client_Encrypt.properties b/components/camel-cxf/src/test/resources/wssecurity/etc/Client_Encrypt.properties
new file mode 100644
index 0000000..d7b5ba1
--- /dev/null
+++ b/components/camel-cxf/src/test/resources/wssecurity/etc/Client_Encrypt.properties
@@ -0,0 +1,5 @@
+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=storepassword
+org.apache.ws.security.crypto.merlin.keystore.alias=serverx509v1
+org.apache.ws.security.crypto.merlin.keystore.file=wssecurity/keystore/client-truststore.jks
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/wssecurity/etc/Client_Sign.properties
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/wssecurity/etc/Client_Sign.properties b/components/camel-cxf/src/test/resources/wssecurity/etc/Client_Sign.properties
new file mode 100644
index 0000000..07d5c82
--- /dev/null
+++ b/components/camel-cxf/src/test/resources/wssecurity/etc/Client_Sign.properties
@@ -0,0 +1,6 @@
+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=storepassword
+org.apache.ws.security.crypto.merlin.keystore.alias=clientx509v1
+org.apache.ws.security.crypto.merlin.keystore.file=wssecurity/keystore/client-keystore.jks
+
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/wssecurity/etc/Server_Decrypt.properties
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/wssecurity/etc/Server_Decrypt.properties b/components/camel-cxf/src/test/resources/wssecurity/etc/Server_Decrypt.properties
new file mode 100644
index 0000000..1feacc1
--- /dev/null
+++ b/components/camel-cxf/src/test/resources/wssecurity/etc/Server_Decrypt.properties
@@ -0,0 +1,5 @@
+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=storepassword
+org.apache.ws.security.crypto.merlin.keystore.alias=serverx509v1
+org.apache.ws.security.crypto.merlin.keystore.file=wssecurity/keystore/server-keystore.jks
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/wssecurity/etc/Server_SignVerf.properties
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/wssecurity/etc/Server_SignVerf.properties b/components/camel-cxf/src/test/resources/wssecurity/etc/Server_SignVerf.properties
new file mode 100644
index 0000000..3557dc7
--- /dev/null
+++ b/components/camel-cxf/src/test/resources/wssecurity/etc/Server_SignVerf.properties
@@ -0,0 +1,5 @@
+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=storepassword
+org.apache.ws.security.crypto.merlin.keystore.alias=clientx509v1
+org.apache.ws.security.crypto.merlin.keystore.file=wssecurity/keystore/server-truststore.jks
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/wssecurity/keystore/client-keystore.jks
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/wssecurity/keystore/client-keystore.jks b/components/camel-cxf/src/test/resources/wssecurity/keystore/client-keystore.jks
new file mode 100644
index 0000000..bc744f9
Binary files /dev/null and b/components/camel-cxf/src/test/resources/wssecurity/keystore/client-keystore.jks differ
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/wssecurity/keystore/client-truststore.jks
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/wssecurity/keystore/client-truststore.jks b/components/camel-cxf/src/test/resources/wssecurity/keystore/client-truststore.jks
new file mode 100644
index 0000000..216bddb
Binary files /dev/null and b/components/camel-cxf/src/test/resources/wssecurity/keystore/client-truststore.jks differ
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/wssecurity/keystore/server-keystore.jks
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/wssecurity/keystore/server-keystore.jks b/components/camel-cxf/src/test/resources/wssecurity/keystore/server-keystore.jks
new file mode 100644
index 0000000..22fd44e
Binary files /dev/null and b/components/camel-cxf/src/test/resources/wssecurity/keystore/server-keystore.jks differ
http://git-wip-us.apache.org/repos/asf/camel/blob/0db69352/components/camel-cxf/src/test/resources/wssecurity/keystore/server-truststore.jks
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/test/resources/wssecurity/keystore/server-truststore.jks b/components/camel-cxf/src/test/resources/wssecurity/keystore/server-truststore.jks
new file mode 100644
index 0000000..2447028
Binary files /dev/null and b/components/camel-cxf/src/test/resources/wssecurity/keystore/server-truststore.jks differ
[2/2] git commit: Reverted the change of CxfConverter in my last
commit
Posted by ni...@apache.org.
Reverted the change of CxfConverter in my last commit
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/da8095f7
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/da8095f7
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/da8095f7
Branch: refs/heads/master
Commit: da8095f71ac9e592187ea87c6ca0cb4be11ec62e
Parents: 070c795
Author: Willem Jiang <ni...@apache.org>
Authored: Mon Jun 17 23:13:32 2013 +0800
Committer: Willem Jiang <ni...@apache.org>
Committed: Mon Jun 17 23:16:59 2013 +0800
----------------------------------------------------------------------
.../apache/camel/component/cxf/converter/CxfConverter.java | 7 -------
1 file changed, 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/da8095f7/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java
----------------------------------------------------------------------
diff --git a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java
index c8e15f4..37b86bd 100644
--- a/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java
+++ b/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/converter/CxfConverter.java
@@ -97,13 +97,6 @@ public final class CxfConverter {
}
@Converter
- public static SOAPMessage StringToSoapMessage(final String string, Exchange exchange) throws SOAPException, IOException {
- InputStream is = new ByteArrayInputStream(string.getBytes(IOHelper.getCharsetName(exchange)));
- SOAPMessage message = MessageFactory.newInstance().createMessage(null, is);
- return message;
- }
-
- @Converter
public static DataFormat toDataFormat(final String name) {
return DataFormat.valueOf(name.toUpperCase());
}