Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc) » [Teneo] Integrating Teneo-Struts-Tomcat
[Teneo] Integrating Teneo-Struts-Tomcat [message #82825] |
Thu, 10 May 2007 10:33 |
Eclipse User |
|
|
|
Originally posted by: gonzalinlinWITHOUT_THIS.tiscali.es
Hello!
I'm developing a web application. I've used EMF to generate my model. Then,
I used Teneo to persist my classes. But when I try to integrate my
View-Controller (Tomcat-JSP-Struts) with Teneo, problems arise.
I followed the "Using Hibernate with Tomcat" tutorial in
http://www.hibernate.org/114.html, but I think there must be something
different when using Teneo.
Does anyone has experience with this kind of topic or can point me to a
good doc about it?
Thanks in advance!
With regards,
Gonzalo
|
|
|
Re: [Teneo] Integrating Teneo-Struts-Tomcat [message #82856 is a reply to message #82825] |
Thu, 10 May 2007 10:43 |
Martin Taal Messages: 5468 Registered: July 2009 |
Senior Member |
|
|
Hi Gonzalo,
I am building a webapp using teneo/emf, hibernate and jsf (and tomcat) and it works fine. What are
the problems you are getting?
gr. Martin
Gonzalo wrote:
> Hello!
>
>
>
> I'm developing a web application. I've used EMF to generate my model. Then,
> I used Teneo to persist my classes. But when I try to integrate my
> View-Controller (Tomcat-JSP-Struts) with Teneo, problems arise.
>
>
>
> I followed the "Using Hibernate with Tomcat" tutorial in
> http://www.hibernate.org/114.html, but I think there must be something
> different when using Teneo.
>
>
>
> Does anyone has experience with this kind of topic or can point me to a
> good doc about it?
>
>
>
> Thanks in advance!
>
>
>
> With regards,
>
>
>
> Gonzalo
>
>
--
With Regards, Martin Taal
Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
|
|
|
Re: [Teneo] Integrating Teneo-Struts-Tomcat [message #82871 is a reply to message #82825] |
Thu, 10 May 2007 10:45 |
Eclipse User |
|
|
|
Originally posted by: merks.ca.ibm.com
Gonzalo,
I'm not familiar with how you'd use JSP-Struts, but I do recall in the
past some folks complaining that because their List was surfaced as an
EList, struts didn't like it. So perhaps using the GenModel's Suppress
EMF Types flag to surface ELists as just Lists in the API would help
with that. Could you say a little bit about what type of problem arises?
Gonzalo wrote:
> Hello!
>
>
>
> I'm developing a web application. I've used EMF to generate my model. Then,
> I used Teneo to persist my classes. But when I try to integrate my
> View-Controller (Tomcat-JSP-Struts) with Teneo, problems arise.
>
>
>
> I followed the "Using Hibernate with Tomcat" tutorial in
> http://www.hibernate.org/114.html, but I think there must be something
> different when using Teneo.
>
>
>
> Does anyone has experience with this kind of topic or can point me to a
> good doc about it?
>
>
>
> Thanks in advance!
>
>
>
> With regards,
>
>
>
> Gonzalo
>
>
>
|
|
|
Re: [Teneo] Integrating Teneo-Struts-Tomcat [message #82931 is a reply to message #82856] |
Thu, 10 May 2007 11:21 |
Eclipse User |
|
|
|
Originally posted by: gonzalinlinWITHOUT_THIS.tiscali.es
Hi Martin,
I can't get the data persisted. I think this is a configuration problem.
Before, I initialized the Teneo Runtime in the Actions (Struts). But now, I
created a similar class to this one:
public class HibernateListener implements ServletContextListener {
public void contextInitialized(ServletContextEvent event) {
final Properties persistenceProps = new Properties();
persistenceProps.setProperty(PersistenceOptions.QUALIFY_ENTI TY_NAME,
PersistenceOptions.QUALIFY_ENTITY_NAME_NSPREFIX); final String
dataStoreName = "mayo"; final HbDataStore dataStore =
(HbDataStore)HbHelper.INSTANCE.createRegisterDataStore(dataS toreName);
dataStore.setPersistenceProperties(persistenceProps);
dataStore.setEPackages(new EPackage[] { party.PartyPackage.eINSTANCE,
productoexpediente.presupuesto.PresupuestoPackage.eINSTANCE,
productoexpediente.factura.FacturaPackage.eINSTANCE,
productoexpediente.ProductoexpedientePackage.eINSTANCE});
dataStore.initialize(); final SessionFactory sessionFactory =
dataStore.getSessionFactory();
}
public void contextDestroyed(ServletContextEvent event) {
// TO DO }
}and created a <listener> tag into the web.xml. I think this is right,
because when Tomcat starts, dataStore.initialize() is called.
When I try to open a session in each of my actions, I need:
final Session session = sessionFactory.openSession();
but, how can the action access to the sessionFactory (in HibernateListener
class and loaded into Tomcat through the <listener> tag) in order to open a
session?
With regards,
Gonzalo
"Martin Taal" <mtaal@elver.org> escribi
|
|
|
Re: [Teneo] Integrating Teneo-Struts-Tomcat [message #82946 is a reply to message #82931] |
Thu, 10 May 2007 11:39 |
Martin Taal Messages: 5468 Registered: July 2009 |
Senior Member |
|
|
Hi Gonzalo,
There are different schools of thought to solve this. To react on your question. The most simple is
just put the sessionfactory in a static singleton somewhere and get it from there when you need it.
Each action will then open and close a session/transaction. This is nice and simple and works fine
if your app uses one sessionfactory (is true for most apps).
Another approach which is very popular is called 'open session in view'. Basically you use a servlet
request filter to intercept all the requests for the database oriented pages. In the request filter
you open a session (from a sessionfactory which you have put in a static singleton somewhere) and
put the session in a threadlocal,
then pass the request on (call chain.doFilter). You application code can then get to the session
through the threadlocal. Then when the request finishes you commit the transaction or rollback (in
case of a transaction).
The nice thing of this approach is that only one session/transaction is opened for one request and
there is much less session/transaction code in your application code.
See here for more info and example code:
http://www.hibernate.org/43.html
gr. Martin
Gonzalo wrote:
> Hi Martin,
>
> I can't get the data persisted. I think this is a configuration problem.
> Before, I initialized the Teneo Runtime in the Actions (Struts). But now, I
> created a similar class to this one:
>
> public class HibernateListener implements ServletContextListener {
>
> public void contextInitialized(ServletContextEvent event) {
> final Properties persistenceProps = new Properties();
> persistenceProps.setProperty(PersistenceOptions.QUALIFY_ENTI TY_NAME,
> PersistenceOptions.QUALIFY_ENTITY_NAME_NSPREFIX); final String
> dataStoreName = "mayo"; final HbDataStore dataStore =
> (HbDataStore)HbHelper.INSTANCE.createRegisterDataStore(dataS toreName);
> dataStore.setPersistenceProperties(persistenceProps);
> dataStore.setEPackages(new EPackage[] { party.PartyPackage.eINSTANCE,
> productoexpediente.presupuesto.PresupuestoPackage.eINSTANCE,
> productoexpediente.factura.FacturaPackage.eINSTANCE,
> productoexpediente.ProductoexpedientePackage.eINSTANCE});
> dataStore.initialize(); final SessionFactory sessionFactory =
> dataStore.getSessionFactory();
> }
>
> public void contextDestroyed(ServletContextEvent event) {
> // TO DO }
> }and created a <listener> tag into the web.xml. I think this is right,
> because when Tomcat starts, dataStore.initialize() is called.
>
> When I try to open a session in each of my actions, I need:
> final Session session = sessionFactory.openSession();
>
> but, how can the action access to the sessionFactory (in HibernateListener
> class and loaded into Tomcat through the <listener> tag) in order to open a
> session?
>
> With regards,
>
> Gonzalo
>
>
> "Martin Taal" <mtaal@elver.org> escribió en el mensaje
> news:f1ut1a$cnn$1@build.eclipse.org...
>> Hi Gonzalo,
>> I am building a webapp using teneo/emf, hibernate and jsf (and tomcat) and
>> it works fine. What are the problems you are getting?
>>
>> gr. Martin
>>
>> Gonzalo wrote:
>>> Hello!
>>>
>>>
>>>
>>> I'm developing a web application. I've used EMF to generate my model.
>>> Then, I used Teneo to persist my classes. But when I try to integrate my
>>> View-Controller (Tomcat-JSP-Struts) with Teneo, problems arise.
>>>
>>>
>>>
>>> I followed the "Using Hibernate with Tomcat" tutorial in
>>> http://www.hibernate.org/114.html, but I think there must be something
>>> different when using Teneo.
>>>
>>>
>>>
>>> Does anyone has experience with this kind of topic or can point me to a
>>> good doc about it?
>>>
>>>
>>>
>>> Thanks in advance!
>>>
>>>
>>>
>>> With regards,
>>>
>>>
>>>
>>> Gonzalo
>>>
>>>
>>
>> --
>>
>> With Regards, Martin Taal
>>
>> Springsite/Elver.org
>> Office: Hardwareweg 4, 3821 BV Amersfoort
>> Postal: Nassaulaan 7, 3941 EC Doorn
>> The Netherlands
>> Tel: +31 (0)84 420 2397
>> Fax: +31 (0)84 225 9307
>> Mail: mtaal@springsite.com - mtaal@elver.org
>> Web: www.springsite.com - www.elver.org
>
>
--
With Regards, Martin Taal
Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
|
|
| |
Re: [Teneo] Integrating Teneo-Struts-Tomcat [message #606653 is a reply to message #82825] |
Thu, 10 May 2007 10:43 |
Martin Taal Messages: 5468 Registered: July 2009 |
Senior Member |
|
|
Hi Gonzalo,
I am building a webapp using teneo/emf, hibernate and jsf (and tomcat) and it works fine. What are
the problems you are getting?
gr. Martin
Gonzalo wrote:
> Hello!
>
>
>
> I'm developing a web application. I've used EMF to generate my model. Then,
> I used Teneo to persist my classes. But when I try to integrate my
> View-Controller (Tomcat-JSP-Struts) with Teneo, problems arise.
>
>
>
> I followed the "Using Hibernate with Tomcat" tutorial in
> http://www.hibernate.org/114.html, but I think there must be something
> different when using Teneo.
>
>
>
> Does anyone has experience with this kind of topic or can point me to a
> good doc about it?
>
>
>
> Thanks in advance!
>
>
>
> With regards,
>
>
>
> Gonzalo
>
>
--
With Regards, Martin Taal
Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
|
|
|
Re: [Teneo] Integrating Teneo-Struts-Tomcat [message #606654 is a reply to message #82825] |
Thu, 10 May 2007 10:45 |
Ed Merks Messages: 33236 Registered: July 2009 |
Senior Member |
|
|
Gonzalo,
I'm not familiar with how you'd use JSP-Struts, but I do recall in the
past some folks complaining that because their List was surfaced as an
EList, struts didn't like it. So perhaps using the GenModel's Suppress
EMF Types flag to surface ELists as just Lists in the API would help
with that. Could you say a little bit about what type of problem arises?
Gonzalo wrote:
> Hello!
>
>
>
> I'm developing a web application. I've used EMF to generate my model. Then,
> I used Teneo to persist my classes. But when I try to integrate my
> View-Controller (Tomcat-JSP-Struts) with Teneo, problems arise.
>
>
>
> I followed the "Using Hibernate with Tomcat" tutorial in
> http://www.hibernate.org/114.html, but I think there must be something
> different when using Teneo.
>
>
>
> Does anyone has experience with this kind of topic or can point me to a
> good doc about it?
>
>
>
> Thanks in advance!
>
>
>
> With regards,
>
>
>
> Gonzalo
>
>
>
Ed Merks
Professional Support: https://www.macromodeling.com/
|
|
|
Re: [Teneo] Integrating Teneo-Struts-Tomcat [message #606658 is a reply to message #82856] |
Thu, 10 May 2007 11:21 |
Gonzalo Messages: 27 Registered: July 2009 |
Junior Member |
|
|
Hi Martin,
I can't get the data persisted. I think this is a configuration problem.
Before, I initialized the Teneo Runtime in the Actions (Struts). But now, I
created a similar class to this one:
public class HibernateListener implements ServletContextListener {
public void contextInitialized(ServletContextEvent event) {
final Properties persistenceProps = new Properties();
persistenceProps.setProperty(PersistenceOptions.QUALIFY_ENTI TY_NAME,
PersistenceOptions.QUALIFY_ENTITY_NAME_NSPREFIX); final String
dataStoreName = "mayo"; final HbDataStore dataStore =
(HbDataStore)HbHelper.INSTANCE.createRegisterDataStore(dataS toreName);
dataStore.setPersistenceProperties(persistenceProps);
dataStore.setEPackages(new EPackage[] { party.PartyPackage.eINSTANCE,
productoexpediente.presupuesto.PresupuestoPackage.eINSTANCE,
productoexpediente.factura.FacturaPackage.eINSTANCE,
productoexpediente.ProductoexpedientePackage.eINSTANCE});
dataStore.initialize(); final SessionFactory sessionFactory =
dataStore.getSessionFactory();
}
public void contextDestroyed(ServletContextEvent event) {
// TO DO }
}and created a <listener> tag into the web.xml. I think this is right,
because when Tomcat starts, dataStore.initialize() is called.
When I try to open a session in each of my actions, I need:
final Session session = sessionFactory.openSession();
but, how can the action access to the sessionFactory (in HibernateListener
class and loaded into Tomcat through the <listener> tag) in order to open a
session?
With regards,
Gonzalo
"Martin Taal" <mtaal@elver.org> escribi
|
|
|
Re: [Teneo] Integrating Teneo-Struts-Tomcat [message #606659 is a reply to message #82931] |
Thu, 10 May 2007 11:39 |
Martin Taal Messages: 5468 Registered: July 2009 |
Senior Member |
|
|
Hi Gonzalo,
There are different schools of thought to solve this. To react on your question. The most simple is
just put the sessionfactory in a static singleton somewhere and get it from there when you need it.
Each action will then open and close a session/transaction. This is nice and simple and works fine
if your app uses one sessionfactory (is true for most apps).
Another approach which is very popular is called 'open session in view'. Basically you use a servlet
request filter to intercept all the requests for the database oriented pages. In the request filter
you open a session (from a sessionfactory which you have put in a static singleton somewhere) and
put the session in a threadlocal,
then pass the request on (call chain.doFilter). You application code can then get to the session
through the threadlocal. Then when the request finishes you commit the transaction or rollback (in
case of a transaction).
The nice thing of this approach is that only one session/transaction is opened for one request and
there is much less session/transaction code in your application code.
See here for more info and example code:
http://www.hibernate.org/43.html
gr. Martin
Gonzalo wrote:
> Hi Martin,
>
> I can't get the data persisted. I think this is a configuration problem.
> Before, I initialized the Teneo Runtime in the Actions (Struts). But now, I
> created a similar class to this one:
>
> public class HibernateListener implements ServletContextListener {
>
> public void contextInitialized(ServletContextEvent event) {
> final Properties persistenceProps = new Properties();
> persistenceProps.setProperty(PersistenceOptions.QUALIFY_ENTI TY_NAME,
> PersistenceOptions.QUALIFY_ENTITY_NAME_NSPREFIX); final String
> dataStoreName = "mayo"; final HbDataStore dataStore =
> (HbDataStore)HbHelper.INSTANCE.createRegisterDataStore(dataS toreName);
> dataStore.setPersistenceProperties(persistenceProps);
> dataStore.setEPackages(new EPackage[] { party.PartyPackage.eINSTANCE,
> productoexpediente.presupuesto.PresupuestoPackage.eINSTANCE,
> productoexpediente.factura.FacturaPackage.eINSTANCE,
> productoexpediente.ProductoexpedientePackage.eINSTANCE});
> dataStore.initialize(); final SessionFactory sessionFactory =
> dataStore.getSessionFactory();
> }
>
> public void contextDestroyed(ServletContextEvent event) {
> // TO DO }
> }and created a <listener> tag into the web.xml. I think this is right,
> because when Tomcat starts, dataStore.initialize() is called.
>
> When I try to open a session in each of my actions, I need:
> final Session session = sessionFactory.openSession();
>
> but, how can the action access to the sessionFactory (in HibernateListener
> class and loaded into Tomcat through the <listener> tag) in order to open a
> session?
>
> With regards,
>
> Gonzalo
>
>
> "Martin Taal" <mtaal@elver.org> escribió en el mensaje
> news:f1ut1a$cnn$1@build.eclipse.org...
>> Hi Gonzalo,
>> I am building a webapp using teneo/emf, hibernate and jsf (and tomcat) and
>> it works fine. What are the problems you are getting?
>>
>> gr. Martin
>>
>> Gonzalo wrote:
>>> Hello!
>>>
>>>
>>>
>>> I'm developing a web application. I've used EMF to generate my model.
>>> Then, I used Teneo to persist my classes. But when I try to integrate my
>>> View-Controller (Tomcat-JSP-Struts) with Teneo, problems arise.
>>>
>>>
>>>
>>> I followed the "Using Hibernate with Tomcat" tutorial in
>>> http://www.hibernate.org/114.html, but I think there must be something
>>> different when using Teneo.
>>>
>>>
>>>
>>> Does anyone has experience with this kind of topic or can point me to a
>>> good doc about it?
>>>
>>>
>>>
>>> Thanks in advance!
>>>
>>>
>>>
>>> With regards,
>>>
>>>
>>>
>>> Gonzalo
>>>
>>>
>>
>> --
>>
>> With Regards, Martin Taal
>>
>> Springsite/Elver.org
>> Office: Hardwareweg 4, 3821 BV Amersfoort
>> Postal: Nassaulaan 7, 3941 EC Doorn
>> The Netherlands
>> Tel: +31 (0)84 420 2397
>> Fax: +31 (0)84 225 9307
>> Mail: mtaal@springsite.com - mtaal@elver.org
>> Web: www.springsite.com - www.elver.org
>
>
--
With Regards, Martin Taal
Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
|
|
| |
Goto Forum:
Current Time: Sat Oct 19 20:22:12 GMT 2024
Powered by FUDForum. Page generated in 0.03404 seconds
|