开发者

error when invoking web services using UTL_DBWS

I followed the example in Oracle tutorial how to invoke the web service.

When I run it with

开发者_开发问答

l_wsdl_url := 'http://www.oracle-base.com/webservices/server.php?wsdl';

It works fine.

However, if I create my own dynamic web application in Eclipse, and generate the SAME wsdl that oracle presents, and change the code to be:

l_wsdl_url        := 'http://localhost:8080/MyProject/services/CalculatorPort?wsdl';

I get an exception:

    ORA-29532: Java call terminated by uncaught Java exception: 
java.lang.IllegalAccessException: error.build.wsdl.model: oracle.j2
ORA-29532: Java call terminated by uncaught Java exception: 
java.lang.IllegalAccessException: error.build.wsdl.model: oracle.j2

So I added to the code:

sys.utl_dbws.set_http_proxy('http://localhost:8080');

I get the following exception:

 ORA-29532: Java call terminated by uncaught Java exception: 
java.lang.IllegalAccessException: error.build.wsdl.model: oracle.j2ORA-29532: Java call 
terminated by uncaught Java exception: java.lang.IllegalAccessException: 
    error.build.wsdl.model: oracle.j2ee.ws.commons.tools.api.WsdlValidationExcpetion:
 faultCode = PARSER_EXCEPTION error reading file at: 
http://localhost:8080/MyProject/services/CalculatorPort?wsdl: http://localhost

The web services runs just fine out of PL/SQL (with soap-ui) tool.

The PL/SQL is sitting behind firewall on a different machine than my localhost application.

What's wrong in the request?


If I understood correctly, what is wrong is the fact that you are trying to call localhost in a different machine than yours. When testing on PL/SQL, please replace localhost by the ip of the machine where the web service is.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜