0
我在我的項目的lib文件夾中添加了groovyws-standalone-0.3.1.jar,在我的Grails應用程序上使用了WSClient。 加在我的控制器下面的代碼:Grails無法使用Wsclient使用Web服務
import groovyx.net.ws.WSClient
....
....
def wsdlUrl = "url_Of_webservice?wsdl"
def payLoad = "list_Of_Parameters"
def result = ''
def proxy = new WSClient(wsdlUrl , this.class.classLoader)
try{
proxy.initialize()
result = proxy.getallvendorsbyurl(payLoad)
}
catch (java.lang.NullPointerException e){
println "proxy not initialize"
}
它在本地主機工作正常,但是當我部署它的tomcat6服務器上,它開始拋出異常:
在服務器日誌:
ERROR errors.GrailsExceptionResolver - groovy.lang.GroovyObjectSupport
java.lang.ClassNotFoundException: groovy.lang.GroovyObjectSupport
上GSP頁面:
Error 500: Executing action [groupDetails] of controller [com.ongraph.yhd.GroupController] caused exception: java.lang.NoClassDefFoundError: groovy/lang/GroovyObjectSupport
Servlet: grails
URI: /grails/group/groupDetails.dispatch
Exception Message: groovy.lang.GroovyObjectSupport
Caused by:groovy.lang.GroovyObjectSupport
Class:GroupController
At Line: [758] (groupController->line-758->def wsdlUrl = "url_Of_webservice?wsdl")
我也經歷了下面提到的鏈接,但沒有運氣:(
您正在使用哪個grails版本? –
我正在使用grails 1.3.4 – Wasim
我認爲你需要遵循這個:http://groovy.codehaus.org/Using+WSClient+in+Grails,但更重要的是,groovyws是'休眠'。其作者建議您使用https://github.com/jwagenleitner/groovy-wslite –