I'm doing something similar to yours... I would put the XSLT translation into
its own activation component and the writer in its own activation component.
Hence you will have 2 activation specs in the JBI, one to translate and the
other to write. In the descriptor, it will look something like this:
<sm:activationSpec componentName="fileTranslator"
service="foo:fileTranslator" destinationService="foo:fileSender">
<sm:component>
<bean
class="org.apache.servicemix.components.xslt.XsltComponent">
<property name="xsltResource"
value="classpath:transform_xml_sql.xsl"/>
</bean>
</sm:component>
</sm:activationSpec>
<sm:activationSpec componentName="fileSender" service="foo:fileSender">
<sm:component>
<bean class="org.apache.servicemix.components.file.FileWriter">
<property name="directory"
value="outbox"/>
<property name="marshaler">
<bean
class="org.apache.servicemix.components.util.DefaultFileMarshaler">
<property
name="fileName">
<bean
class="org.apache.servicemix.expression.JaxenStringXPathExpression">
<constructor-arg
value="concat('rfid_', /Matrics/@id, '.xml')"/>
</bean>
</property>
</bean>
</property>
</bean>
</sm:component>
</sm:activationSpec>
HTH,
-los
Alex75 wrote:
>
> Hi World, I have an XML copied from another location to a directory via
> servicemix.
> I want also to transform that using xslt (I already created the style) and
> than save the tranformed file to the same location.
>
> Here the xml config file.... what's wrong?
>
> <beans xmlns:sm="http://servicemix.apache.org/config/1.0"
> xmlns:foo="http://servicemix.org/demo/">
>
> <!-- the JBI container -->
> <sm:container id="jbi" name="writer" flowName="jms"
> useMBeanServer="true"
> createMBeanServer="true" dumpStats="true" statsInterval="10"
> rmiPort="1111">
>
> <sm:activationSpecs>
>
> <!-- Write files to the outbox directory -->
> <sm:activationSpec componentName="fileSender"
> service="foo:fileSender">
> <sm:component>
> <bean
> class="org.apache.servicemix.components.xslt.XsltComponent">
> <property name="xsltResource"
> value="classpath:transform_xml_sql.xsl"/>
> </bean>
> </sm:component>
> <sm:component>
> <bean
> class="org.apache.servicemix.components.file.FileWriter">
> <property name="directory"
> value="outbox"/>
> <property name="marshaler">
> <bean
> class="org.apache.servicemix.components.util.DefaultFileMarshaler">
> <property
> name="fileName">
> <bean
>
> class="org.apache.servicemix.expression.JaxenStringXPathExpression">
>
> <constructor-arg
>
> value="concat('rfid_', /Matrics/@id, '.xml')"/>
> </bean>
> </property>
> </bean>
> </property>
> </bean>
> </sm:component>
> </sm:activationSpec>
>
> </sm:activationSpecs>
> </sm:container>
>
> <!-- the work manager (thread pool) for this container -->
> <bean id="workManager"
> class="org.jencks.factory.WorkManagerFactoryBean">
> <property name="threadPoolSize" value="30"/>
> </bean>
>
> </beans>
>
--
View this message in context:
http://www.nabble.com/XSLT-transform-and-file-save-tf2652926s12049.html#a7403175
Sent from the ServiceMix - User mailing list archive at Nabble.com.