下面的 UML 图显示了客户端应用程序的基本结构。
resp.setContentType("text/html");
String responseURL = null;
String fullURL =
req.getRequestURI();
// get the screen name
String selectedURL = null;
int lastPathSeparator =
fullURL.lastIndexOf("/") + 1;
if (lastPathSeparator != -1)
{
selectedURL = fullURL.substring(lastPathSeparator, fullURL.length());
}
responseURL =
getResponseURL(selectedURL);
if
(selectedURL.equals("invokeservice.do")) {
try {
handler.handle(req,resp);
}
catch (RequestHandlerException re) {
req.setAttribute("error_message", re.getMessage());
responseURL = getResponseURL("error.do");
}
}
getServletConfig().getServletContext()
.getRequestDispatcher(responseURL).forward(req, resp);
代码示例 1:FrontController.java 中的代码片段
if(request.getParameter("type").equals("String")){
ret = stringPOService.submitPO(po);
}
else if(request.getParameter("type").equals("Object")){
ret = schemaPOService.submitPO(po);
}
else if(request.getParameter("type").equals("AnyType")){
ret = anyTypePOService.submitPO(po);
}
else if(request.getParameter("type").equals("Any")){
ret = anyPOService.submitPO(po);
}
else if(request.getParameter("type").equals("Attachment")){
ret = attachmentPOService.submitPO(po);
}
request.setAttribute("result",
ret);
代码示例 2:RequestHandler.java 中的代码片段
SchemaDefinedPurchaseOrderServiceSEI port =
(SchemaDefinedPurchaseOrderServiceSEI)
serviceLocator.getServicePort(JNDINames.SCHEMA_SERVICE_REF,
SchemaDefinedPurchaseOrderServiceSEI.class);
...
String ret = port.submitPO(order);
代码示例 3:SchemaPOServiceBD.java 中的代码片段
<service-ref>
<description>Schema defined Purchase Order
Service Client</description>
<service-ref-name>service/SchemaDefinedPurchaseOrderService</service-ref-name>
<service-interface>
com.sun.j2ee.blueprints.docoriented.client.objectposervice.SchemaDefinedPurchaseOrderService
</service-interface>
<wsdl-file>WEB-INF/wsdl/SchemaDefinedPurchaseOrderService.wsdl</wsdl-file>
<jaxrpc-mapping-file>WEB-INF/schemadefinedpurchaseorderservice-mapping.xml</jaxrpc-mapping-file>
<service-qname
xmlns:servicens="urn:SchemaDefinedPurchaseOrderService">servicens:SchemaDefinedPurchaseOrderService
</service-qname>
</service-ref>
代码示例 4:web.xml 中的代码片段
字符串形式的文档 |
用于 StringPurchaseOrderService 的 WSDL |
结构定义的类型形式的文档 |
用于 SchemaDefinedPurchaseOrderService 的 WSDL |
xsd:anyType 形式的文档 |
用于 AnyTypePurchaseOrderService 的 WSDL |
xsd:any 形式的文档 |
用于 AnyPurchaseOrderService 的 WSDL |
附件形式的文档 |
用于 AttachmentPurchaseOrderService 的 WSDL |