2014-10-19 94 views
0

我创建了一个使用SOAP服务器端点执行某些操作的Web应用程序(使用JSP)。我使用gradle来自动化构建。我的问题是,当我运行WebApp时,它找不到WSDL生成的类(并且我已经在build.gradle中指定了它们)。WSDL生成的文件

我的servlet的源文件在/SRC /主/爪哇/ servlet的和生成的WSDL文件是在/SRC-GEN /主/爪哇/ todo_soap

这里我的WebApp 的build.gradle

buildscript { 
    repositories { 
     jcenter() 
    mavenCentral() 
    } 

    dependencies { 
     classpath (group: 'com.sahlbach.gradle', name: 'gradle-jetty-eclipse-plugin', version: '1.9.+') 
    classpath 'org.gradle.jacobo.plugins:gradle-wsdl-plugin:1.7.6' 
    classpath 'org.gradle.jacobo.plugins:gradle-jaxb-plugin:1.3.4' 
    } 
} 

apply plugin: 'com.github.jacobono.wsdl' 
apply plugin: 'com.github.jacobono.jaxb' 

apply plugin: 'java' 
apply plugin: 'war' 
apply plugin: 'jettyEclipse' 
apply plugin: 'eclipse' 
apply plugin: 'eclipse-wtp' 

repositories { 
    mavenCentral()            
} 

dependencies { 
    providedCompile 'javax.servlet:javax.servlet-api:3.0.1' 
    compile 'com.google.code.gson:gson:2.3' 
    jaxws "com.sun.xml.ws:jaxws-rt:2.2.8" 
    jaxws "com.sun.xml.ws:jaxws-tools:2.2.8" 
} 

// 
// See the documentation of this plugin at 
// https://github.com/jacobono/gradle-wsdl-plugin 
// 

wsdl { 
    wsdlFolder = "src/main/wsdl" 
    wsimport { 
    sourceDestinationDirectory = "src-gen/main/java" 
    wsdlLocation = "http://localhost.com:8081/toDoSOAP?wsdl" 
    } 
} 

sourceSets.main.java.srcDirs += wsdl.wsimport.sourceDestinationDirectory 
compileJava.dependsOn wsimport 

// 
// Required by XJC because toDoSOAP.xsd is a file 
// 

System.setProperty('javax.xml.accessExternalSchema', 'all') 

My full project here

+1

我们绝对需要更多信息。什么没有找到究竟是什么?是否有任何错误消息或堆栈跟踪? – 2014-10-19 19:55:41

回答

0

我只是测试你的代码。下面是缺少信息的一个例子Martijn Courteaux请求:

/Users/javier/Downloads/Lab1-master/ToDo_SOAP_WebApp-ws/src/main/java/servlets/ToDoAddServlet.java:39: error: cannot find symbol 
     ToDoWebServiceService twss = new ToDoWebServiceService(); 
     ^
symbol: class ToDoWebServiceService 
location: class ToDoAddServlet 

错误的原因是,你忘了文件ToDoAddServlet.java中添加import todo_soap.*;。如果你看看src-gen\main\java,你可以看到生成的代码属于包todo_soap