0

我有一个基于代理Web Service Client class(Proxyclient.java)来访问部署在本地服务器中的 Web 服务。当我尝试通过客户端类(Proxyclient.java)中的主函数访问 weservice 时,我能够在没有任何错误的情况下获得响应。但是当我收到来自的请求时基于 Struts 的 Web 应用程序在请求到达我的客户端类 ( Proxyclient.java) 之前没有问题。但是一旦它到达特定行中的类,如下所示

JaxWsProxyFactoryBean factory= new JaxWsProxyFactoryBean(); 

当执行到这一行时,我收到如下错误响应

SEVERE: Servlet.service() for servlet action threw exception
java.lang.ClassNotFoundException: org.apache.cxf.jaxws.JaxWsProxyFactoryBean
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1358)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1204)
at com.tmb.clientimpl.ProxyClient.checkUserId(ProxyClient.java:18)
at com.tmb.client.action.DetailsFetcher.getStatus(DetailsFetcher.java:14).... more

我拥有此 Web 服务命中所需的所有 jar 文件。我是否需要对 struts-config.xml 或要添加的任何其他 jar 进行任何更改以纠正问题..?请帮助我...

下面是我的客户类:

public class ProxyClient {

public UserIdExistsBean checkUserId(String UserId){
    UserIdExistsBean userIdExistsBean=new UserIdExistsBean();
    try{
    System.out.println("entering before fact");
    JaxWsProxyFactoryBean factory= new JaxWsProxyFactoryBean();
    System.out.println("factory ready");
    factory.setServiceClass(IUserDetails.class);
    factory.setAddress("http://xx.xx.xx:YYYY/UserDetailsService");
    IUserDetails serviceRef=(IUserDetails)factory.create();
    System.out.println("after creating");

    userIdExistsBean=(UserIdExistsBean)serviceRef.checkuserId(UserId);
    }
    catch (Exception e) {
        // TODO: handle exception
        e.printStackTrace();

    }
    return userIdExistsBean;
}
public static void main(String[] args) {
    UserIdExistsBean userIdExistsBean=new UserIdExistsBean();
    ProxyClient proxy=new ProxyClient();
    userIdExistsBean=proxy.checkUserId("test");
    System.out.println("exists "+userIdExistsBean.isExists());
    System.out.println("response "+userIdExistsBean.getRespString());
}
4

1 回答 1

0

在您的 Struts Web Application/WEB-INF/lib中检查任何可用的jars

于 2013-03-28T10:39:10.930 回答