torek, 19. oktober 2010

Enabling ORACLE XDB Native Servlet

The following program code enables native web service generation under Oracle database server (9+)
DECLARE
  l_servlet_name VARCHAR2(32) := 'orawsv';
BEGIN
  DBMS_XDB.deleteServletMapping(l_servlet_name);

  DBMS_XDB.deleteServlet(l_servlet_name);

  DBMS_XDB.addServlet(
    name     => l_servlet_name,
    language => 'C',
    dispname => 'Oracle Query Web Service',
    descript => 'Servlet for issuing queries as a Web Service',
    schema   => 'XDB');

  DBMS_XDB.addServletSecRole(
    servname => l_servlet_name,
    rolename => 'XDB_WEBSERVICES',
    rolelink => 'XDB_WEBSERVICES');

  DBMS_XDB.addServletMapping(
    pattern => '/orawsv/*',
    name    => l_servlet_name);
END;
/
 
After this you can access your service wsdl file via
http://<web-server-address>:<port-no>/orawsv/<database-schema>/<package-inside-schema>?wsdl
 
It will automatically generate wdsl file and web services
 
Happy servicing :)