I'm using Eclipse to automatically create a WebLogic web service (not client) from a pre-existing WSDL. It receives 3 request parameters (String, String, byte[]) and responds with 1 parameter (byte[]). However the auto-generated class contains code that produces the following error:
Endpoint interface method "public byte[] sign(java.lang.String, java.lang.String, byte[])" must be implemented in the Web Service.
But the sign method clearly exist in the code.
So, I tried creating a really simple WSDL to test the auto-generation of web service. This time the WSDL defined 2 request parameter (int, int) and 1 response (int).
This time the error did not show up and worked just fine.
Tools I'm using
- Eclipse - 3.7.1
- Oracle Enterprise Pack for Eclipse 11.1.1.8.0
- Oracle WebLogic Server 11gR1 (10.3.6)
- Class auto generation done by Oracle JAX-WS 2.1.5
- Windows 7 - 32 bit with 1.6 JDK/JRE
Steps to reproduce the error:
- Launch Eclipse
- File → New → Web Service Project
- Import this WSDL to your WEB-INF/wsdl directory.
- Right click on the WSDL file name and click WebLogic Web Services → Generate Web Service
- Notice the error in the produced dss_DSSPortImpl class file.
Repeat the above step with this WSDL and produced class file works fine.
Any help is really appreciated. Thanks!
(The namespace on the WSDL files have been changed from my test due to privacy reasons.)