/*
* #%L
* GarethHealy :: JBoss Fuse Examples :: WS Playground :: WS Security HTTPS CXF Client
* %%
* Copyright (C) 2013 - 2017 Gareth Healy
* %%
* Licensed 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.
* #L%
*/
package com.garethahealy.wssecurity.https.cxf.client;
import java.io.InvalidObjectException;
import com.garethahealy.helloworld.HelloWorldEndpoint;
import com.garethahealy.helloworld.HelloWorldRequest;
import com.garethahealy.wssecurity.https.cxf.client.config.WsEndpointConfiguration;
import com.garethahealy.wssecurity.https.cxf.client.services.WsHelloWorldService;
public final class Client {
private Client() {
}
public static void main(String[] args) throws InvalidObjectException {
HelloWorldRequest request = new HelloWorldRequest();
request.setHello("bob");
WsHelloWorldService service = new WsHelloWorldService(getConfig(), false);
service.sayHello(request);
}
private static WsEndpointConfiguration<HelloWorldEndpoint> getConfig() {
WsEndpointConfiguration<HelloWorldEndpoint> config = new WsEndpointConfiguration<HelloWorldEndpoint>();
config.setCxfDebug(true);
config.setCertifactionAlias("clientx509v1");
config.setWsAddress("https://0.0.0.0:9001/cxf/helloWorldService");
config.setServiceClass(HelloWorldEndpoint.class);
config.setPathToKeystore("/Users/garethah/Documents/github/garethahealy/jboss-fuse-examples/ws-security-https-cxf-client/src/main/resources/keystore");
config.setPathToTruststore("/Users/garethah/Documents/github/garethahealy/jboss-fuse-examples/ws-security-https-cxf-client/src/main/resources/keystore");
config.setKeystoreFilename("client-keystore.jks");
config.setTruststoreFilename("client-truststore.jks");
config.setKeystorePassword("storepassword");
config.setTruststorePassword("storepassword");
config.setKeyManagerPassword("storepassword");
config.setPasswordCallbackClass("com.garethahealy.wssecurity.https.cxf.client.config.UTPasswordCallback");
config.setSignatureKeystoreFilename("keystore/client-keystore.jks");
config.setSignatureKeystorePassword("storepassword");
return config;
}
}