App.java
package com.training.ws;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.xml.ws.BindingProvider;
import javax.xml.ws.handler.MessageContext;
public class App {
public static void main(String[] args) {
MyServiceHeaderService service = new MyServiceHeaderService();
MyServiceHeader port = service.getMyServiceHeaderPort();
Map<String, Object> requestContext = ((BindingProvider) port)
.getRequestContext();
Map<String, List<String>> headers = new HashMap<String, List<String>>();
headers.put("myHeader", Collections.singletonList("myValue"));
requestContext.put(MessageContext.HTTP_REQUEST_HEADERS, headers);
port.getName();
}
}
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.training</groupId>
<artifactId>jax_ws_header_client</artifactId>
<version>1.0</version>
<packaging>jar</packaging>
<build>
<plugins>
<plugin>
<groupId>org.jvnet.jax-ws-commons</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>2.3</version>
<executions>
<execution>
<goals>
<goal>wsimport</goal>
</goals>
<configuration>
<wsdlUrls>
<wsdlUrl>http://localhost:9080/jax_ws_header_server/MyServiceHeaderService?wsdl</wsdlUrl>
</wsdlUrls>
<packageName></packageName>
<wsdlLocation>http://localhost:9080/jax_ws_header_server/MyServiceHeaderService?wsdl</wsdlLocation>
</configuration>
<id>wsimport-generate-service</id>
<phase>generate-sources</phase>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>javax.xml</groupId>
<artifactId>webservices-api</artifactId>
<version>2.0</version>
</dependency>
</dependencies>
<configuration>
<sourceDestDir>${project.build.directory}/generated-sources/jaxws-wsimport</sourceDestDir>
<xnocompile>true</xnocompile>
<verbose>true</verbose>
<extension>true</extension>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>