beehive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From wolfgang12...@yahoo.co.jp
Subject Re: endpoint interface
Date Wed, 29 Sep 2004 18:56:07 GMT
Hi Michael,

> I am trying to find out how to do that as part of the switch from
> reflection/byte-code processing to apt. Stay tuned...

okay, please let me know when you make it.

I'm thinking to implement the service endpoint interface for 
the WsmReflectionAnnotationProcessor.java as well.
But before doing that, I wanna make sure one thing.

How does the caller retrieve the object model of the service 
endpoint interface ?

For example, Foo.java (in svn) specifies "Cheetorama" as its @WebService.endpointInterface.
Using the last code I sent you, the caller gotta follow the procedures below.

First: 
The caller uses the com.sun.tools.apt.Main class to get an object model of the Foo.java.
(Like in drt/tests/org/apache/beehive/wsm/jsr181/processor/apt/WsmAnnotationProcessorTest.java
)

   String[] _args = {
     "-factory",
     "org.apache.beehive.wsm.jsr181.processor.apt.WsmAnnotationProcessorFactory",
      ...
   };

   int status = new Main().compile(_args);
   ...
   this.objectModel = WsmAnnotationProcessor.getObjectModel("Foo");


Second:
The object model(this.objectModel) of the Foo.java is in the caller's hands now, 
so the caller now gotta check whether the endpointInterface exists in the object model.
In this case, it exists and specifies "Cheetorama".

Third:
The caller finally can get the object model of the Cheetorama by invoking 
WsmAnnotationProcessor.getObjectModel("Cheetorama");

Is this sequence right ?

or
When WsmAnnotationProcessor.getObjectModel("Foo"); is invoked in the First part,
Is the object model of "Cheetorama" actually returned ?
(So the caller doesn't need to care whether Foo.java has the service endpoing interface.
If the Foo.java doesn't have the service endpoint interface, the object model of Foo.java

will be returned.)

Even though I implemented WsmAnnotationProcessorFactory as former way, somehow I think 
latter way looks correct to me according to JSR-181. (not sure though)

But by the latter way, we can never get the object model of Foo.java if the service 
endpoint interface exists. Foo's object model will be overrided by the one of the service

endpoing interface (Cheetorama).

Former or latter way, which is correct ??

Thanks in advance.

Wolfgang.





Mime
View raw message