Hi,
I believe you can consider servicemix-camel, which leverage apache camel
project.
servicemix-camel is more flexiable to honor complex features.
Take a look at [1] to get more ideas.
Besides that, you also can implement your own business logic in
servicemix-bean, where you can control everything but may need more code
by yourself.
I'm not sure you can do it with servicemix-drools, but I maybe wrong.
[1]http://activemq.apache.org/camel/
Freeman
brijesh wrote:
Freeman,
thanks alot for the help,
Is there any SMX SEs like servicemix-saxon, which tranform the xml document
by taking data from database, I believe saxon can transform xml element data
but need to hardcode it in xslt.
the usecase I mentioned above need to substitute mapping id with xml element
data from database table. so xslt need to pull the data from database based
on incoming id. hence simple transformation is not sufficient in above
mentioned the scenario.
wondering any other SMX SEs can do this or is it possible to do the same
with drools?
Brijesh
Freeman Fang wrote:
brijesh wrote:
Freeman ,
thanks for the response , but i my concern is servicemix-cxf-bc can
validate
the schema defined wsdl?
Yes,
You can configure it for your cxf bc consumer since the consumer play
the role as a server for external client to validate the incoming soap
message against the schema defined in the wsdl
To do it, you need write a spring configuration, let's say
schema-validation.xml for cxf bus, something like
<jaxws:endpoint name="{your_endpoint_namespace}your_endpoint"
wsdlLocation="wsdl/hello_world.wsdl"
createdFromAPI="true">
<jaxws:properties>
<entry key="schema-validation-enabled" value="true" />
</jaxws:properties>
</jaxws:endpoint>
Then add busCfg="schema-validation.xml" for your cxf bc consumer
will it throw soap fault if the xml message is not compliance with schema
defined in wsdl??
Yes
also can this be implemented as synchronised(in-out mep) method call,
Yes
Brijesh
Freeman Fang wrote:
Hi,
I believe the flow like
external client <====> servicemix-cxf-bc consumer
<=====>servicemix-saxon or servicemix-camel<=======> servicemix-cxf-se
The servicemix-cxf-bc[1] consumer can expose webservice over http and do
the validation for the incoming message against the schema
The servicemix-saxon[4] or servciemix-camel[3] can do the xml substitute
The servicemix-cxf-se[2] can do the unmarshall of the xml message (from
xml to the parameter object) and do the real invocation.
[1]http://servicemix.apache.org/servicemix-cxf-bc.html
[2]http://servicemix.apache.org/servicemix-cxf-se.html
[3]http://servicemix.apache.org/servicemix-camel.html
[4]http://servicemix.apache.org/servicemix-saxon.html
Freeman
brijesh wrote:
hello ,
I have following usecase scenario ;
I need to expose services written in java to external application
through
http. But incoming data should be in predefined format (compliance to a
schema which we are going to publish) and data should be validated
against
this scheama.
After above mentioned validation and before calling actual service ,I
need
to fetch data mapping from a staging table, which will substitute
incoming
data with mapped data from staging table which will be maintaned in
our
database. After fetching mapping data from this staging table, we need
to
extract the data from incoming message and call the service written
java
,
extracted data from incoming message would be parameter for this
method.
the above scanario need to implement as a syncronised service call.
since
we
need to return back the execution status success or failure in a
specific
xml format.
can anybody suggest suitable BCs and SEs for the above implementaion.
Thanks in advance
Brijesh N K