TypeHierarchyPrinterService.jws Sample
This topic inludes the source code for the TypeHierarchyPrinterService.jws Sample.
Sample Location
This sample is located in the following directory in your WebLogic Workshop installation:
BEA_HOME/weblogic81/samples/workshop/SamplesApp/WebServices/xmlBeans/schema/
Sample Source Code
01 package xmlBeans.schema;
02
03 import org.openuri.easypo.Customer;
04 import com.bea.xml.SchemaTypeSystem;
05
06 /**
07 @common:target-namespace namespace="http://workshop.bea.com/TypeHierarchyPrinterService"
08 */
09
10 public class TypeHierarchyPrinterService implements com.bea.jws.WebService
11 {
12 /**
13 * Prints a hierarchical rendering of the schema types represented
14 * by the schema type system available to this application.
15 * A schema type system is a set of Java types corresponding to
16 * XML schema types. When you compile schema into Java types,
17 * those Java types (along with the built-in types they use or
18 * inherit from) become part of a schema type system.
19 * <br/><br/>
20 * The type system used by this sample is available to this code because
21 * the types are included in a JAR file on this application's
22 * classpath. These types are used by the various schema-related
23 * samples in the SamplesApp application.
24 *
25 * @common:operation
26 */
27 public String printHierarchy() throws Exception
28 {
29 /**
30 * Create a Customer instance simply to get the type system
31 * it belongs to.
32 */
33 Customer customer = Customer.Factory.newInstance();
34
35 /**
36 * Get the type system from the Customer object.
37 */
38 SchemaTypeSystem typeSystem = customer.schemaType().getTypeSystem();
39
40 /**
41 * Pass the type system to a TypeHierarchyPrinter instance,
42 * which will walk through it, creating a hiearchical rendering
43 * of the schema types (including elements) defined in the
44 * schemas from which the type system was created.
45 */
46 TypeHierarchyPrinter printer = new TypeHierarchyPrinter();
47
48 return printer.printHierarchy(typeSystem);
49 }
50 }
|