📄 rpcrouter.java
字号:
package org.huihoo.openweb.uddiserver.soap;
import java.io.*;
import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.huihoo.openweb.uddiserver.service.*;
import org.huihoo.openweb.uddiserver.util.*;
import org.huihoo.openweb.uddi.*;
/**
* RPCRouter.java
*
*
* @author <a href="mailto:powertyrael@163.net">Darth Vader</a> and <a href="mailto:13975192956@hnmcc.com">Spring</a> create at 20:45:38 on 2003-5-6
*
* @version 1.0 alpha
*/
public class RPCRouter extends HttpServlet
{
public void doGet (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
res.setContentType("text/xml");
PrintWriter out = res.getWriter ();
out.println("<html><head><title>OPENWEBUDDI RPC Router</title></head>");
out.println ("<body><h1>OPENWEBUDDI RPC Router</h1>");
out.println ("<p>Sorry, I don't speak via HTTP GET- you have to use");
out.println ("HTTP POST to talk to me.</p></body></html>");
}
public void doPost (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
Connection con = null;
PrintWriter out = res.getWriter();
try
{
res.setContentType("text/html");
out.print( "<?xml version='1.0' encoding='UTF-8'?>");
out.print( "<Envelope xmlns=\"http://schemas.xmlsoap.org/soap/envelope/\">");
out.print( "<Body>");
SoapRequest soapRequest = new SoapRequest( req.getInputStream());
SoapBody body = soapRequest.getBody();
String apiName = body.getApiName();
UddiObject param = body.getApiParam();
System.out.println("input doc");
System.out.println(apiName);
System.out.println( param);
con = SqlConnection.getConnection();
UddiService uService = new UddiService( con);
//con.setAutoCommit( false);
UddiObject obj = uService.invokeAppropriateApi( apiName, param);
//con.commit();
con.close();
System.out.println(obj);
System.out.println( obj.getClass().getName());
if( obj.getClass().getName().equals("org.huihoo.openweb.uddi.DispositionReport")) {
out.print( "<Fault>");
out.print( "<faultcode>Client</faultcode><faultstring>Client Error</faultstring><detail>");
out.print( obj.toString());
out.print( "</detail>");
out.print( "</Fault>");
}
else {
out.print( obj.toString());
}
// System.out.println( apiName);
// System.out.println( obj);
}
catch (Exception e)
{
try {
con.rollback();
con.close();
}
catch ( Exception e1){
e1.printStackTrace();
}
e.printStackTrace();
out.print( "<Fault>");
out.print( "<faultcode>Server</faultcode><faultstring>Server Error</faultstring><detail>");
out.print( "Some Technical error has happened.");
out.print( "</detail>");
out.print( "</Fault>");
}
finally {
out.print( "</Body>");
out.print( "</Envelope>");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -