2012-05-15 4 views
1

Я хочу вызвать веб-службу JaxWsProxyFactoryBean. Я тестировал в tomcat 6, и все было в порядке, но когда я развернулся на WAS 7, он не работал.проблемы cxf с websphere

Моей проблема: когда я вызываю метод factory.create() этот код:

JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); 
     factory.setServiceClass(CustomerServices.class); 
     factory.setAddress("http://host:port/MyServices"); 
     factory.getInInterceptors().add(new LoggingInInterceptor()); 
     factory.getOutInterceptors().add(new LoggingOutInterceptor()); 
     CustomerServices client = (CustomerServices) factory.create(); 

Я получил это исключение: ServiceConstructionException , который говорит мне 'e.getMessage() = NULL'

Есть ли какая-либо несовместимость между моим pom ниже с WAS 7?

--pom.xml--

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>${junit.version}</version> 
     <scope>test</scope> 
    </dependency> 

    <!--log--> 
    <dependency> 
     <groupId>log4j</groupId> 
     <artifactId>log4j</artifactId> 
     <version>${log4j.version}</version> 
    </dependency> 

    <!--commons--> 
    <dependency> 
     <groupId>commons-logging</groupId> 
     <artifactId>commons-logging</artifactId> 
     <version>1.1.1</version> 
    </dependency> 
    <dependency> 
     <groupId>commons-lang</groupId> 
     <artifactId>commons-lang</artifactId> 
     <version>2.4</version> 
    </dependency> 
    <dependency> 
     <groupId>commons-collections</groupId> 
     <artifactId>commons-collections</artifactId> 
     <version>3.2.1</version> 
    </dependency> 

    <!--Spring--> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>${org.springframework.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context-support</artifactId> 
     <version>${org.springframework.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-jdbc</artifactId> 
     <version>${org.springframework.version}</version> 
    </dependency> 
    <!-- Spring AOP + AspectJ --> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-aop</artifactId> 
     <version>${org.springframework.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.aspectj</groupId> 
     <artifactId>aspectjtools</artifactId> 
     <version>1.6.2</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-asm</artifactId> 
     <version>${org.springframework.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-core</artifactId> 
     <version>${org.springframework.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-expression</artifactId> 
     <version>${org.springframework.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-test</artifactId> 
     <version>${org.springframework.version}</version> 
     <scope>test</scope> 
    </dependency> 

    <dependency> 
     <groupId>asm</groupId> 
     <artifactId>asm</artifactId> 
     <version>3.3</version> 
    </dependency> 
    <dependency> 
     <groupId>cglib</groupId> 
     <artifactId>cglib-nodep</artifactId> 
     <version>2.2</version> 
    </dependency> 

    <!-- AOP --> 
    <dependency> 
     <groupId>org.aspectj</groupId> 
     <artifactId>aspectjrt</artifactId> 
     <version>1.6.2</version> 
    </dependency> 
    <dependency> 
     <groupId>org.aspectj</groupId> 
     <artifactId>aspectjweaver</artifactId> 
     <version>1.6.2</version> 
    </dependency> 

    <!-- db connection and pooling --> 
    <dependency> 
     <groupId>com.ibm.db2</groupId> 
     <artifactId>db2jcc</artifactId> 
     <version>9.1.0</version> 
    </dependency> 
    <dependency> 
     <groupId>com.ibm.db2</groupId> 
     <artifactId>db2jcc-license-cisuz</artifactId> 
     <version>9.1.0</version> 
    </dependency> 
    <dependency> 
     <groupId>com.jolbox</groupId> 
     <artifactId>bonecp</artifactId> 
     <version>0.6.7.2</version> 
    </dependency> 
    <dependency> 
     <groupId>commons-dbcp</groupId> 
     <artifactId>commons-dbcp</artifactId> 
     <version>1.2.2</version> 
    </dependency> 

    <!-- Servlet --> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>servlet-api</artifactId> 
     <version>2.5</version> 
     <scope>provided</scope> 
    </dependency> 

    <!-- Apache CXF dependencies --> 
    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-frontend-jaxws</artifactId> 
     <version>${cxf.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-transports-http</artifactId> 
     <version>${cxf.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-databinding-aegis</artifactId> 
     <version>${cxf.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-bindings-soap</artifactId> 
     <version>${cxf.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>quartz</groupId> 
     <artifactId>quartz</artifactId> 
     <version>1.5.2</version> 
    </dependency> 

    <!--date & time--> 

    <dependency> 
     <groupId>joda-time</groupId> 
     <artifactId>joda-time</artifactId> 
     <version>1.6.2</version> 
    </dependency> 

    <dependency> 
     <groupId>com.persianCalender</groupId> 
     <artifactId>simpleCalender</artifactId> 
     <version>1.4.0</version> 
    </dependency> 

    <dependency> 
     <groupId>javax.xml.soap</groupId> 
     <artifactId>saaj-api</artifactId> 
     <version>1.3.1</version> 
    </dependency> 

    <dependency> 
     <groupId>com.sun.xml.messaging.saaj</groupId> 
     <artifactId>saaj-impl</artifactId> 
     <version>1.3.2</version> 
    </dependency> 

    <dependency> 
     <groupId>wsdl4j</groupId> 
     <artifactId>wsdl4j</artifactId> 
     <version>1.6.2</version> 
    </dependency> 

    <dependency> 
     <groupId>org.codehaus.woodstox</groupId> 
     <artifactId>wstx-asl</artifactId> 
     <version>3.2.9</version> 
    </dependency> 

    <dependency> 
     <groupId>org.codehaus.woodstox</groupId> 
     <artifactId>woodstox-core-asl</artifactId> 
     <version>4.1.1</version> 
    </dependency> 

    <dependency> 
     <groupId>org.codehaus.woodstox</groupId> 
     <artifactId>stax2-api</artifactId> 
     <version>3.1.1</version> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.ws.xmlschema</groupId> 
     <artifactId>xmlschema-core</artifactId> 
     <version>2.0</version> 
    </dependency> 

    <dependency> 
     <groupId>xml-resolver</groupId> 
     <artifactId>xml-resolver</artifactId> 
     <version>1.2</version> 
    </dependency> 

</dependencies> 
+0

UTF8 верно 4.8.2 1.2.16 3.0.5.RELEASE 2.2.9 farhad

ответ

0

Выполните инструкции здесь на веб-сайте Apache CXF для конкретных серверов приложений помощи?

http://cxf.apache.org/docs/application-server-specific-configuration-guide.html#ApplicationServerSpecificConfigurationGuide-ForWebSphere6.1.0.29%2CV7andV8

Можете ли вы попробовать те из?

+0

спасибо, мой друг, это действительно помогает мне – farhad

0

В конце концов, я нашел другое решение вместо использования JaxWsProxyFactoryBean в качестве клиента. мы должны использовать другого клиента;

public final static QName SERVICE_NAME = new QName("URL", "MyServiceImplService"); 


     MyServiceImplService ss = new MyServiceImplService (wsdlURL, SERVICE_NAME); 
     CustomerServices port = ss.getMyServiceImplPort(); 
     port.myMethod(input); 
0

я был более или менее те же проблемы развертывания JAX-WS веб-служб на WebSphere 7 с помощью CXF для WS и Maven для сборки.

Вы можете найти много информации в Интернете; Я попытался собрать их всех, и разместил сообщение в блоге http://bit.ly/1wCyjfx.

Здесь вы можете найти разделы зависимостей и WAR, которые работают прямо сейчас для меня (в моем приложении, я публикую некоторую услугу и потребляю другую услугу) с конкретными ссылками на конфигурации WAS 7.

+0

Может быть, сообщение в блоге больше не доступно? –

+0

Ранее предоставленная ссылка больше не доступна. Я обновил ссылку. Благодарю. –

Смежные вопросы