POJO-SE: Multiple operations for provider (incoming request)

6 messages Options
Embed this post
Permalink
rjoshi

POJO-SE: Multiple operations for provider (incoming request)

Reply Threaded More More options
Print post
Permalink
Currently we use EJB in BPEL via web service wrapper and HTTP-BC which is bottleneck in our product.
e.g.
BPEL ==> NMR ==> HTTP-BC ==> WebService ==> EJB

I want to convert into POJO-SE based CA which will either do EJB lookup or include it as a local library/jar file to avoid the bottleneck.

Web Service over EJB provides the multiple operations and I want to do the same thing in POJO-SE based CA.

How to I create multiple operations in pojo-se?

@Provider(serviceQN = "{http://www.example.com/mplus/jbi/wsdl/copy}CopyService", name = "Copy_Endpoint", interfaceQN = "{http://www.example.com/mplus/jbi/wsdl/copy}copyPortType")
public class Copy{

 @Operation(outMessageTypeQN = "{http://www.example.com/mplus/jbi/wsdl/copy}copyRequest")
     public Node receive(NormalizedMessage var0) { }


     @Operation(outMessageTypeQN = "{http://www.example.com/mplus/jbi/wsdl/copy}copyDataRequest")
     public Node copyData(NormalizedMessage var0) { }

}

But when it creates a WSDL,  it only creates only one operation (first one).  What am I missing?
Girish Patil-2

Re: POJO-SE: Multiple operations for provider (incoming request)

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
It is by design that we wanted POJO SE to message oriented. All the messages to the ServiceEndpoint are routed to same method.

You can even now handles for multiple WSDL operations by having if-then-else conditions in your method.

Ex:

@Operation(....)
String someOperation(String st){
   
    QName inOpName = this.jbiCtx.getMessageExchange().getOperation();

    if (inOpName.equals(op1)){
    ...
    }
    ...
}

-Girish

rjoshi wrote:
Currently we use EJB in BPEL via web service wrapper and HTTP-BC which is
bottleneck in our product.
e.g.
BPEL ==> NMR ==> HTTP-BC ==> WebService ==> EJB

I want to convert into POJO-SE based CA which will either do EJB lookup or
include it as a local library/jar file to avoid the bottleneck.

Web Service over EJB provides the multiple operations and I want to do the
same thing in POJO-SE based CA.

How to I create multiple operations in pojo-se?

@Provider(serviceQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}CopyService", name =
"Copy_Endpoint", interfaceQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyPortType")
public class Copy{

 @Operation(outMessageTypeQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyRequest")
     public Node receive(NormalizedMessage var0) { }


     @Operation(outMessageTypeQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyDataRequest")
     public Node copyData(NormalizedMessage var0) { }

}

But when it creates a WSDL,  it only creates only one operation (first one). 
What am I missing?
  
rjoshi

Re: POJO-SE: Multiple operations for provider (incoming request)

Reply Threaded More More options
Print post
Permalink
Thanks Girish for quick response.  

You guys have done very good job developing pojo-se. Performance is really good. There are some issues like when I set the logging level to WARNING using Glassfish Web Admin console, its not effective but when I turn that off, it works fine.


Girish Patil-2 wrote:
It is by design that we wanted POJO SE to message oriented. All the
messages to the ServiceEndpoint are routed to same method.

You can even now handles for multiple WSDL operations by having
if-then-else conditions in your method.

Ex:

@Operation(....)
String someOperation(String st){
   
    QName inOpName = this.jbiCtx.getMessageExchange().getOperation();

    if (inOpName.equals(op1)){
    ...
    }
    ...
}

-Girish

rjoshi wrote:
> Currently we use EJB in BPEL via web service wrapper and HTTP-BC which is
> bottleneck in our product.
> e.g.
> BPEL ==> NMR ==> HTTP-BC ==> WebService ==> EJB
>
> I want to convert into POJO-SE based CA which will either do EJB lookup or
> include it as a local library/jar file to avoid the bottleneck.
>
> Web Service over EJB provides the multiple operations and I want to do the
> same thing in POJO-SE based CA.
>
> How to I create multiple operations in pojo-se?
>
> @Provider(serviceQN =
> "{http://www.example.com/mplus/jbi/wsdl/copy}CopyService", name =
> "Copy_Endpoint", interfaceQN =
> "{http://www.example.com/mplus/jbi/wsdl/copy}copyPortType")
> public class Copy{
>
>  @Operation(outMessageTypeQN =
> "{http://www.example.com/mplus/jbi/wsdl/copy}copyRequest")
>      public Node receive(NormalizedMessage var0) { }
>
>
>      @Operation(outMessageTypeQN =
> "{http://www.example.com/mplus/jbi/wsdl/copy}copyDataRequest")
>      public Node copyData(NormalizedMessage var0) { }
>
> }
>
> But when it creates a WSDL,  it only creates only one operation (first one).
> What am I missing?
>  
Girish Patil-2

Re: POJO-SE: Multiple operations for provider (incoming request)

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
Do you mean setting POJO SE's logging level to WARNING, effects POJO SE performance?
If so we will take a look at it when we we do performance test next time.

Thanks for your encouraging comments and feedback. 
-Girish


rjoshi wrote:
Thanks Girish for quick response.  

You guys have done very good job developing pojo-se. Performance is really
good. There are some issues like when I set the logging level to WARNING
using Glassfish Web Admin console, its not effective but when I turn that
off, it works fine.



Girish Patil-2 wrote:
  
It is by design that we wanted POJO SE to message oriented. All the 
messages to the ServiceEndpoint are routed to same method.

You can even now handles for multiple WSDL operations by having 
if-then-else conditions in your method.

Ex:

@Operation(....)
String someOperation(String st){
   
    QName inOpName = this.jbiCtx.getMessageExchange().getOperation();

    if (inOpName.equals(op1)){
    ...
    }
    ...
}

-Girish

rjoshi wrote:
    
Currently we use EJB in BPEL via web service wrapper and HTTP-BC which is
bottleneck in our product.
e.g.
BPEL ==> NMR ==> HTTP-BC ==> WebService ==> EJB

I want to convert into POJO-SE based CA which will either do EJB lookup
or
include it as a local library/jar file to avoid the bottleneck.

Web Service over EJB provides the multiple operations and I want to do
the
same thing in POJO-SE based CA.

How to I create multiple operations in pojo-se?

@Provider(serviceQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}CopyService", name =
"Copy_Endpoint", interfaceQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyPortType")
public class Copy{

 @Operation(outMessageTypeQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyRequest")
     public Node receive(NormalizedMessage var0) { }


     @Operation(outMessageTypeQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyDataRequest")
     public Node copyData(NormalizedMessage var0) { }

}

But when it creates a WSDL,  it only creates only one operation (first
one). 
What am I missing?
  
      
    

  
rjoshi

Re: POJO-SE: Multiple operations for provider (incoming request)

Reply Threaded More More options
Print post
Permalink
I means when I set logging level to WARNING, it supposed to disabled INFO logging but it doesn't.



Girish Patil-2 wrote:
Do you mean setting POJO SE's logging level to WARNING, effects POJO SE
performance?
If so we will take a look at it when we we do performance test next time.

Thanks for your encouraging comments and feedback.
-Girish


rjoshi wrote:
> Thanks Girish for quick response.  
>
> You guys have done very good job developing pojo-se. Performance is really
> good. There are some issues like when I set the logging level to WARNING
> using Glassfish Web Admin console, its not effective but when I turn that
> off, it works fine.
>
>
>
> Girish Patil-2 wrote:
>  
>> It is by design that we wanted POJO SE to message oriented. All the
>> messages to the ServiceEndpoint are routed to same method.
>>
>> You can even now handles for multiple WSDL operations by having
>> if-then-else conditions in your method.
>>
>> Ex:
>>
>> @Operation(....)
>> String someOperation(String st){
>>    
>>     QName inOpName = this.jbiCtx.getMessageExchange().getOperation();
>>
>>     if (inOpName.equals(op1)){
>>     ...
>>     }
>>     ...
>> }
>>
>> -Girish
>>
>> rjoshi wrote:
>>    
>>> Currently we use EJB in BPEL via web service wrapper and HTTP-BC which is
>>> bottleneck in our product.
>>> e.g.
>>> BPEL ==> NMR ==> HTTP-BC ==> WebService ==> EJB
>>>
>>> I want to convert into POJO-SE based CA which will either do EJB lookup
>>> or
>>> include it as a local library/jar file to avoid the bottleneck.
>>>
>>> Web Service over EJB provides the multiple operations and I want to do
>>> the
>>> same thing in POJO-SE based CA.
>>>
>>> How to I create multiple operations in pojo-se?
>>>
>>> @Provider(serviceQN =
>>> "{http://www.example.com/mplus/jbi/wsdl/copy}CopyService", name =
>>> "Copy_Endpoint", interfaceQN =
>>> "{http://www.example.com/mplus/jbi/wsdl/copy}copyPortType")
>>> public class Copy{
>>>
>>>  @Operation(outMessageTypeQN =
>>> "{http://www.example.com/mplus/jbi/wsdl/copy}copyRequest")
>>>      public Node receive(NormalizedMessage var0) { }
>>>
>>>
>>>      @Operation(outMessageTypeQN =
>>> "{http://www.example.com/mplus/jbi/wsdl/copy}copyDataRequest")
>>>      public Node copyData(NormalizedMessage var0) { }
>>>
>>> }
>>>
>>> But when it creates a WSDL,  it only creates only one operation (first
>>> one).
>>> What am I missing?
>>>  
>>>      
>>    
>
>  
Girish Patil-2

Re: POJO-SE: Multiple operations for provider (incoming request)

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
Filed [1] to track this issue.

[1] https://open-esb.dev.java.net/issues/show_bug.cgi?id=2351

rjoshi wrote:
I means when I set logging level to WARNING, it supposed to disabled INFO
logging but it doesn't.




Girish Patil-2 wrote:
  
Do you mean setting POJO SE's logging level to WARNING, effects POJO SE 
performance?
If so we will take a look at it when we we do performance test next time.

Thanks for your encouraging comments and feedback. 
-Girish


rjoshi wrote:
    
Thanks Girish for quick response.  

You guys have done very good job developing pojo-se. Performance is
really
good. There are some issues like when I set the logging level to WARNING
using Glassfish Web Admin console, its not effective but when I turn that
off, it works fine.



Girish Patil-2 wrote:
  
      
It is by design that we wanted POJO SE to message oriented. All the 
messages to the ServiceEndpoint are routed to same method.

You can even now handles for multiple WSDL operations by having 
if-then-else conditions in your method.

Ex:

@Operation(....)
String someOperation(String st){
   
    QName inOpName = this.jbiCtx.getMessageExchange().getOperation();

    if (inOpName.equals(op1)){
    ...
    }
    ...
}

-Girish

rjoshi wrote:
    
        
Currently we use EJB in BPEL via web service wrapper and HTTP-BC which
is
bottleneck in our product.
e.g.
BPEL ==> NMR ==> HTTP-BC ==> WebService ==> EJB

I want to convert into POJO-SE based CA which will either do EJB lookup
or
include it as a local library/jar file to avoid the bottleneck.

Web Service over EJB provides the multiple operations and I want to do
the
same thing in POJO-SE based CA.

How to I create multiple operations in pojo-se?

@Provider(serviceQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}CopyService", name =
"Copy_Endpoint", interfaceQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyPortType")
public class Copy{

 @Operation(outMessageTypeQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyRequest")
     public Node receive(NormalizedMessage var0) { }


     @Operation(outMessageTypeQN =
"{http://www.example.com/mplus/jbi/wsdl/copy}copyDataRequest")
     public Node copyData(NormalizedMessage var0) { }

}

But when it creates a WSDL,  it only creates only one operation (first
one). 
What am I missing?