Although Oracle Application Server does not currently support LOB types, XMLTYPE, REF CURSORS, and OUT/IN OUT arguments (they will be addressed in future releases), you can use an alternative approach to expose PL/SQL methods and SQL types as Web services.
You can change JPublisher's default behavior to generate code that uses a user-provided subclass. For example, if you have a PL/SQL method that returns a REF CURSOR, JPublisher automatically maps the return type to
java.sql.ResultSet
. However, this ResultSet
type cannot be published as a Web service. To solve this, simply create a new method that can return the result set in a Web service-supported format, such as:public String [] readRefCursorArray(String arg1, Integer arg2) {java.sql.ResultSet rs = getRefCursor(arg1,arg2); ... create a String[] from rs and return it... }
Then create an interface that contains the exact methods to publish. You can use JPublisher to easily accomplish this mapping by using the following:
jpub -sql=MYAPP:MyAppBase:MyApp#MyAppInterf...
where:
MyApp
contains the method to return the result set.MyAppInterf
is the interface that contains the method to publish.
After translating the code for your application, archive all the class files into a single JAR file and use the Web Services Assembler to create a deployable Web service EAR file
No comments:
Post a Comment