[jboss-dev-forums] [JBoss ESB Development] New message: "Re: Smooks problem"
Gilles Dupont Tagne Tagne
do-not-reply at jboss.com
Thu Jan 14 08:58:15 EST 2010
JBoss development,
A new message was posted in the thread "Smooks problem":
http://community.jboss.org/message/520047#520047
Author : Gilles Dupont Tagne Tagne
Profile : http://community.jboss.org/people/tagnegilles
Message:
--------------------------------------------------------------
Thanks Maurice for the answer. I try to do what you said. But It doesn't work, may be i am doing something wrong
I wrote this class
package de.gilles.projects.splitteresb;
import java.io.IOException;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.persistence.EntityManager;
import javax.persistence.Persistence;
import javax.persistence.PersistenceUnit;
import org.milyn.SmooksException;
import org.milyn.container.ExecutionContext;
import org.milyn.delivery.sax.SAXElement;
import org.milyn.delivery.sax.SAXVisitBefore;
import org.milyn.persistence.util.PersistenceUtil;
import org.milyn.scribe.adapter.jpa.EntityManagerRegister;
@PersistenceUnit(name="persistence/personDB",unitName="persondb")
public class DBSaxVisitor implements SAXVisitBefore {
@Override
public void visitBefore(SAXElement arg0, ExecutionContext arg1)
throws SmooksException, IOException {
try {
InitialContext jndiContext = new InitialContext();
EntityManager entityManager = (EntityManager) jndiContext.lookup("persistence/PersonDB");
EntityManagerRegister entityManagerRegister = new EntityManagerRegister(entityManager);
PersistenceUtil.setDAORegister(arg1, entityManagerRegister);
System.out.println("HI GUYS");
} catch (NamingException e) {
// TODO: handle exception
}
}
}
But i don't know whether this wil work
@PersistenceUnit(name="persistence/personDB",unitName="persondb")
public class DBSaxVisitor implements SAXVisitBefore {
I registered the visitor in the dbSmooksConf.xml
<?xml version="1.0" encoding="UTF-8"?>
<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.1.xsd"
xmlns:jb="http://www.milyn.org/xsd/smooks/javabean-1.2.xsd"
xmlns:ds="http://www.milyn.org/xsd/smooks/datasource-1.1.xsd"
xmlns:db="http://www.milyn.org/xsd/smooks/db-routing-1.1.xsd"
xmlns:dao="http://www.milyn.org/xsd/smooks/persistence-1.2.xsd">
<resource-config selector="#document">
<resource>de.gilles.projects.splitteresb.DBSaxVisitor</resource>
</resource-config>
<jb:bean beanId="personage" class="de.gilles.projects.splitteresb.PersonAge" createOnElement="person">
<jb:value property="id" data="person/id" decoder="Integer"/>
<jb:value property="age" data="person/age" decoder="Integer"/>
</jb:bean>
<dao:inserter beanId="personage" insertOnElement="person"/>
</smooks-resource-list>
I started again. I don't see the output "*HI GUYS*" on the console. I still have this
14:52:21,122 INFO [STDOUT] [Splitter] Message Split complete:
14:52:21,122 INFO [STDOUT] [/Users/gilles/Desktop/ESB/Input/bien.csv.work].
14:52:21,236 INFO [STDOUT] **********************************************************
14:52:21,236 INFO [STDOUT] ** Message Receive from ESB **
14:52:21,237 INFO [STDOUT] **********************************************************
14:52:21,237 INFO [STDOUT]
PersonID: 1
Age: 31
14:52:21,259 INFO [STDOUT] Message:
14:52:21,259 INFO [STDOUT] [1,31].
14:52:21,271 INFO [STDOUT] Message:
14:52:21,271 INFO [STDOUT] [<personliste><person><id>1</id><age>31</age></person></personliste>].
14:52:21,280 INFO [STDOUT] **********************************************************
14:52:21,280 INFO [STDOUT] ** Message Receive from ESB **
14:52:21,280 INFO [STDOUT] **********************************************************
14:52:21,280 INFO [STDOUT]
PersonID: 2
Age: 28
14:52:21,302 WARN [ActionProcessingPipeline] No fault address defined for fault message! To: InVMEpr [ PortReference < <wsa:Address invm://73706c697474657254657374242424242424242424242424646250657273697374/false?false#10000/>, <wsa:ReferenceProperties jbossesb:passByValue : false/> > ] MessageID: 4b427c32-e4a1-432d-a14b-73624bc86a7d
14:52:21,309 INFO [STDOUT] **********************************************************
14:52:21,309 INFO [STDOUT] ** Message Receive from ESB **
14:52:21,309 INFO [STDOUT] **********************************************************
14:52:21,309 INFO [STDOUT]
PersonID: 3
Age: 15
14:52:21,321 INFO [STDOUT] **********************************************************
14:52:21,321 INFO [STDOUT] ** Message Receive from ESB **
14:52:21,321 INFO [STDOUT] **********************************************************
14:52:21,321 INFO [STDOUT]
PersonID: 4
Age: 20
14:52:21,433 INFO [STDOUT] Message:
14:52:21,433 INFO [STDOUT] [2,28].
14:52:21,435 INFO [STDOUT] Message:
14:52:21,435 INFO [STDOUT] [<personliste><person><id>2</id><age>28</age></person></personliste>].
14:52:21,437 WARN [ActionProcessingPipeline] No fault address defined for fault message! To: InVMEpr [ PortReference < <wsa:Address invm://73706c697474657254657374242424242424242424242424646250657273697374/false?false#10000/>, <wsa:ReferenceProperties jbossesb:passByValue : false/> > ] MessageID: b8836712-2aa0-46e3-8bb8-727eff97a792
14:52:21,517 INFO [STDOUT] Message:
14:52:21,517 INFO [STDOUT] [3,15].
14:52:23,222 INFO [STDOUT] **********************************************************
14:52:23,222 INFO [STDOUT] ** Message Receive from ESB **
14:52:23,222 INFO [STDOUT] **********************************************************
14:52:23,223 INFO [STDOUT]
PersonID: 1
Firstame: Max
Lastname: Mustermann
14:52:23,230 INFO [STDOUT] Message:
14:52:23,231 INFO [STDOUT] [<personliste><person><id>3</id><age>15</age></person></personliste>].
14:52:23,233 WARN [ActionProcessingPipeline] No fault address defined for fault message! To: InVMEpr [ PortReference < <wsa:Address invm://73706c697474657254657374242424242424242424242424646250657273697374/false?false#10000/>, <wsa:ReferenceProperties jbossesb:passByValue : false/> > ] MessageID: 414c3e4f-c58a-43f7-a0ec-02254044240c
14:52:23,384 INFO [STDOUT] Message:
14:52:23,384 INFO [STDOUT] [4,20].
14:52:23,390 INFO [STDOUT] Message:
14:52:23,390 INFO [STDOUT] [<personliste><person><id>4</id><age>20</age></person></personliste>].
14:52:23,392 WARN [ActionProcessingPipeline] No fault address defined for fault message! To: InVMEpr [ PortReference < <wsa:Address invm://73706c697474657254657374242424242424242424242424646250657273697374/false?false#10000/>, <wsa:ReferenceProperties jbossesb:passByValue : false/> > ] MessageID: be7026f0-2d0d-4a96-bf3d-4700408538e4
14:52:25,532 INFO [STDOUT] **********************************************************
14:52:25,532 INFO [STDOUT] ** Message Receive from ESB **
14:52:25,532 INFO [STDOUT] **********************************************************
14:52:25,532 INFO [STDOUT]
PersonID: 2
Firstame: Ingrid
Lastname: Duck
14:52:27,591 INFO [STDOUT] **********************************************************
14:52:27,591 INFO [STDOUT] ** Message Receive from ESB **
14:52:27,591 INFO [STDOUT] **********************************************************
14:52:27,591 INFO [STDOUT]
PersonID: 3
Firstame: Bernd
Lastname: Schneider
14:52:28,595 INFO [STDOUT] **********************************************************
14:52:28,595 INFO [STDOUT] ** Message Receive from ESB **
14:52:28,595 INFO [STDOUT] **********************************************************
14:52:28,596 INFO [STDOUT]
PersonID: 4
Firstame: Bettina
Lastname: Klaus
--------------------------------------------------------------
To reply to this message visit the message page: http://community.jboss.org/message/520047#520047
More information about the jboss-dev-forums
mailing list