Hello Sebastian

Maybe you can create branch for that?
Currently I'm changing classes to have EntityManager and/or other beans
being injected and the code is partially ruined.
I got loadEmot, but this all good news for now.

Or may be it is possible to use
https://openmeetings.googlecode.com/svn/branches/dev/om_openjpa for that
purposes?


2011/8/12 [email protected] <[email protected]>

> Hi Maxim,
>
> that sounds great! Could you commit those fixes (or the part that you've
> reworked to fix the JAR conflicts + your sample). I would like to work on
> the completion of that feature too.
>
> Or you paste somewhere your changes as patch + the binaries so that I can
> download + apply your changes, but I think you might try commiting to trunk
> ...
>
> Sebastian
>
>
> 2011/8/10 Maxim Solodovnik <[email protected]>
>
>> I was able to resolve persistence exception
>> but repacking javaee-api (persistence/** was removed)
>> openjpa-all-2.1.0.jar was moved to the lib
>>
>> I will start adding injectionant tomorrow (my time)
>>
>> Thanks for your help!
>>
>>
>> On Thu, Aug 11, 2011 at 01:00, Maxim Solodovnik <[email protected]>wrote:
>>
>>> javaee-5.1.1 contains jpa-1.0 (and javaee up to 5.2)
>>> openJPA2.1 contains jpa- 2.0.
>>>
>>> I will try to recompile it, or extract from javaee
>>>
>>> On Thu, Aug 11, 2011 at 00:54, Maxim Solodovnik <[email protected]>wrote:
>>>
>>>> I was unable to implement 2nd approach from link above. 3rd approach
>>>> gives the same exception
>>>> org.apache.openjpa.persistence.PersistenceProviderImpl cannot be cast to
>>>> javax.persistence.spi.PersistenceProvider.
>>>>
>>>> I will try to resolve this issue.
>>>>
>>>>
>>>> On Wed, Aug 10, 2011 at 19:00, Alexei Fedotov <[email protected]
>>>> > wrote:
>>>>
>>>>> Trying to reproduce this.
>>>>> --
>>>>> With best regards / с наилучшими пожеланиями,
>>>>> Alexei Fedotov / Алексей Федотов,
>>>>> http://dataved.ru/
>>>>> +7 916 562 8095
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Wed, Aug 10, 2011 at 1:55 AM, [email protected]
>>>>> <[email protected]> wrote:
>>>>> > ++ you might check the latest red5. Maybe that one already uses a
>>>>> different
>>>>> > j2ee-x.jar
>>>>> >
>>>>> > Sebastian
>>>>> >
>>>>> > 2011/8/9 [email protected] <[email protected]>
>>>>> >>
>>>>> >> Okay I see,
>>>>> >>
>>>>> >> those are some internals that we have not so much control about.
>>>>> >> Stupid question: openjpa-all-2.1.0.jar, do we need the *ALL-Jar* are
>>>>> there
>>>>> >> some "fine-granular"ed JARs? That might help to identify the
>>>>> conflict
>>>>> >> better.
>>>>> >>
>>>>> >> Have you check what version of the interface PersistanceProvider our
>>>>> >> openJPA version uses? Maybe we can downgrade openJPA to a version
>>>>> that is
>>>>> >> compatible with the one from the red5-lib?
>>>>> >>
>>>>> >> For the moment maybe you might try the quick and dirty fix and we
>>>>> review
>>>>> >> this part again.
>>>>> >>
>>>>> >> The docs say
>>>>> >>
>>>>> >>
>>>>> http://static.springsource.org/spring/docs/3.0.x/reference/orm.html#orm-jpa
>>>>> >>
>>>>> >> *The Spring JPA support offers three ways of setting up the JPA
>>>>> >> EntityManagerFactory that will be used by the application to obtain
>>>>> an
>>>>> >> entity manager.*
>>>>> >>
>>>>> >> So there must be at least two other ways that we might try too.
>>>>> >>
>>>>> >> Sebastian
>>>>> >>
>>>>> >>
>>>>> >>
>>>>> >> 2011/8/9 Maxim Solodovnik <[email protected]>
>>>>> >>>
>>>>> >>> I need this for string+openJPA integration
>>>>> >>> I add following red5-applicationContext.xml
>>>>> >>> <?xml version="1.0" encoding="UTF-8"?>
>>>>> >>> <beans xmlns="http://www.springframework.org/schema/beans";
>>>>> >>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>>>>> >>> xmlns:mvc="http://www.springframework.org/schema/mvc";
>>>>> >>> xsi:schemaLocation="http://www.springframework.org/schema/beans
>>>>> >>> http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
>>>>> >>> http://www.springframework.org/schema/mvc
>>>>> >>> http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd";
>>>>> >>> >
>>>>> >>> <bean id="entityManagerFactory"
>>>>> >>> class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">
>>>>> >>> <property name="persistenceUnitName" value="openmeetings" />
>>>>> >>> </bean>
>>>>> >>> <bean id="transactionManager"
>>>>> >>> class="org.springframework.orm.jpa.JpaTransactionManager">
>>>>> >>> <property name="entityManagerFactory" ref="entityManagerFactory" />
>>>>> >>> </bean>
>>>>> >>> <bean
>>>>> >>>
>>>>> class="org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor"
>>>>> >>> />
>>>>> >>> <bean class="org.springframework.orm.jpa.JpaTransactionManager">
>>>>> >>> <property name="entityManagerFactory" ref="entityManagerFactory" />
>>>>> >>> </bean>
>>>>> >>> <bean id="daoTransaction"
>>>>> >>> class="org.openmeetings.app.persistence.utils.DAOTransaction"/>
>>>>> >>> </beans>
>>>>> >>> and get following log:
>>>>> >>>
>>>>> >>> [INFO] [Launcher:/openmeetings]
>>>>> >>> org.springframework.orm.jpa.LocalEntityManagerFactoryBean -
>>>>> Building JPA
>>>>> >>> EntityManagerFactory for
>>>>> >>> persistence unit 'openmeetings'
>>>>> >>> [INFO] [Launcher:/openmeetings]
>>>>> >>>
>>>>> org.springframework.beans.factory.support.DefaultListableBeanFactory -
>>>>> >>> Destroying singletons in or
>>>>> >>>
>>>>> >>>
>>>>> g.springframework.beans.factory.support.DefaultListableBeanFactory@3c4178d0
>>>>> :
>>>>> >>> defining beans [entityManagerFactory,transactionManag
>>>>> >>>
>>>>> >>>
>>>>> er,org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor#0,org.springframework.orm.jpa.JpaTransactionManager#
>>>>> >>>
>>>>> >>>
>>>>> 0,daoTransaction,placeholderConfig,web.context,web.scope,web.handler,openmeetings.ClientListManager,openmeetings.EmoticonsManager,
>>>>> >>>
>>>>> >>>
>>>>> openmeetings.WhiteBoardObjectListManager,openmeetings.WhiteBoardObjectListManagerById,appointmentcategoryservice.service,appointme
>>>>> >>>
>>>>> >>>
>>>>> ntreminderservice.service,calendarservice.service,meetingmemberservice.service,fileservice.service,openmeetings.FileProcessor,open
>>>>> >>>
>>>>> >>>
>>>>> meetings.FlvExplorerConverter,openmeetings.FileExplorerItemDaoImpl,conferenceservice.service,openmeetings.Roommanagement,userservi
>>>>> >>>
>>>>> >>>
>>>>> ce.service,openmeetings.UsersDaoImpl,organisationservice.service,configservice.service,openmeetings.Configurationmanagement,errors
>>>>> >>>
>>>>> >>>
>>>>> ervice.service,pollservice.service,xmlcrm.service,languageservice.service,chatservice.service,streamservice.service,invitationserv
>>>>> >>>
>>>>> >>>
>>>>> ice.service,whiteboardservice.service,printservice.service,flvrecorderservice.service,openmeetings.FlvRecordingDaoImpl,openmeeting
>>>>> >>>
>>>>> >>>
>>>>> s.FlvRecordingMetaDataDaoImpl,openmeetings.FlvRecordingLogDaoImpl,openmeetings.FlvRecordingMetaDeltaDaoImpl,openmeetings.TaskExecu
>>>>> >>>
>>>>> >>>
>>>>> tor,openmeetings.FlvRecorderConverterTask,openmeetings.FlvInterviewConverterTask,openmeetings.FlvInterviewReConverterTask,openmeet
>>>>> >>>
>>>>> >>>
>>>>> ings.FlvInterviewConverter,openmeetings.FlvRecorderConverter,openmeetings.FlvInterviewReConverter,ldapconfigservice.service,openme
>>>>> >>> etings.LdapConfigDaoImpl]; parent:
>>>>> >>>
>>>>> org.springframework.beans.factory.support.DefaultListableBeanFactory@2ff1f38e
>>>>> >>> Exception in thread "Launcher:/openmeetings"
>>>>> >>> org.springframework.beans.factory.BeanCreationException: Error
>>>>> creating bean
>>>>> >>> with nam
>>>>> >>> e 'entityManagerFactory' defined in ServletContext resource
>>>>> >>> [/WEB-INF/red5-applicationContext.xml]: Invocation of init method
>>>>> fail
>>>>> >>> ed; nested exception is javax.persistence.PersistenceException: The
>>>>> >>> instance of the object with the class name 'org.apache.openjpa
>>>>> >>> .persistence.PersistenceProviderImpl' in the ClassLoader
>>>>> >>> 'WebappClassLoader
>>>>> >>>   delegate: false
>>>>> >>>   repositories:
>>>>> >>>     /WEB-INF/classes/
>>>>> >>> ----------> Parent Classloader:
>>>>> >>> java.net.URLClassLoader@60750159
>>>>> >>> ' is not an instance of PersistenceProvider interface.
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBean
>>>>> >>> Factory.java:1401)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFa
>>>>> >>> ctory.java:512)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFact
>>>>> >>> ory.java:450)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:2
>>>>> >>> 22)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactor
>>>>> >>> y.java:540)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationConte
>>>>> >>> xt.java:842)
>>>>> >>>         at
>>>>> >>>
>>>>> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:416)
>>>>> >>>         at
>>>>> >>> org.red5.server.tomcat.TomcatLoader$1.run(TomcatLoader.java:594)
>>>>> >>> Caused by: javax.persistence.PersistenceException: The instance of
>>>>> the
>>>>> >>> object with the class name 'org.apache.openjpa.persistence.
>>>>> >>> PersistenceProviderImpl' in the ClassLoader 'WebappClassLoader
>>>>> >>> On Wed, Aug 10, 2011 at 04:24, [email protected]
>>>>> >>> <[email protected]> wrote:
>>>>> >>>>
>>>>> >>>> What do you need this class for?
>>>>> >>>> Does the conflict actually has sth todo with the Exception or do
>>>>> you
>>>>> >>>> need this Class ** for the Spring <=> OpenJPA integration?
>>>>> >>>> Cause I don't see any reference to this class if you follow the
>>>>> >>>> Spring/JPA Guide:
>>>>> >>>>
>>>>> >>>>
>>>>> http://static.springsource.org/spring/docs/3.0.x/reference/orm.html#orm-jpa
>>>>> >>>>
>>>>> >>>> You could add the quick & dirty solution of Vasiliy anyway, if it
>>>>> really
>>>>> >>>> improves the situation.
>>>>> >>>>
>>>>> >>>> Sebastian
>>>>> >>>>
>>>>> >>>> 2011/8/9 Maxim Solodovnik <[email protected]>
>>>>> >>>>>
>>>>> >>>>> Hello Sebastian,
>>>>> >>>>> I was unable to take a look at your latest logs, but suppose it
>>>>> is
>>>>> >>>>> also
>>>>> >>>>> "InvalidStateException: This operation cannot be performed while
>>>>> a
>>>>> >>>>> Transaction is active."
>>>>> >>>>> To handle it I add EntityManager injection via Spring config as
>>>>> was
>>>>> >>>>> previously discussed.
>>>>> >>>>> Unfortunately I'm currently stuck on following library conflict:
>>>>> >>>>> 1) red5 is dependant on javaee-api-5.1.1.jar which
>>>>> >>>>> contains javax\persistence\spi\PersistenceProvider definition
>>>>> >>>>> 2) and openjpa-all-2.1.0.jar contains definition of this class
>>>>> >>>>> as well as implementation
>>>>> >>>>> (org.apache.openjpa.persistence.PersistenceProviderImpl)
>>>>> >>>>> The problem is: these two classes seems to be incompatible:
>>>>> >>>>> javax.persistence.PersistenceException: The instance of the
>>>>> object with
>>>>> >>>>> the class name
>>>>> 'org.apache.openjpa.persistence.PersistenceProviderImpl' in
>>>>> >>>>> the ClassLoader 'WebappClassLoader' is not an instance of
>>>>> >>>>> PersistenceProvider interface.
>>>>> >>>>> I tried to get fresh version of javaee-api*.jar
>>>>> >>>>> but
>>>>> >>>>> 1) the version downloaded from maven
>>>>> repository javaee-api-6.0.jar
>>>>> >>>>> doesn't have all necessary packages
>>>>> >>>>> 2) the version downloaded
>>>>> >>>>> from
>>>>> http://www.jarvana.com/jarvana/browse/org/ow2/jonas/osgi/javaee-api/
>>>>>  has
>>>>> >>>>> all packages BUT has incompatible version of PersistenceProvider
>>>>> interface
>>>>> >>>>> Maybe you have idea how can I resolve this?
>>>>> >>>>> Thanks a lot in advance
>>>>> >>>>> p.s. May be I can implement DAOTransaction abstract class (from
>>>>> initial
>>>>> >>>>> Vasiliy's proposal) as quick and dirty solution?
>>>>> >>>>>
>>>>> >>>>> On Mon, Aug 8, 2011 at 15:58, [email protected]
>>>>> >>>>> <[email protected]> wrote:
>>>>> >>>>>>
>>>>> >>>>>> meanwhile the service become unavailable,
>>>>> >>>>>> you might grab the latest Logfile:
>>>>> >>>>>> http://demo.openmeetings.de/jvm.stdout
>>>>> >>>>>>
>>>>> >>>>>> I might switch back to the previous version later today.
>>>>> >>>>>>
>>>>> >>>>>> We might at least agree on a road to take to solve those issues.
>>>>> >>>>>>
>>>>> >>>>>>
>>>>> >>>>>> Sebastian
>>>>> >>>>>>
>>>>> >>>>>> 2011/8/8 Maxim Solodovnik <[email protected]>
>>>>> >>>>>>>
>>>>> >>>>>>> Hello Alexei,
>>>>> >>>>>>> should i take a look at all these issues? Vasiliy is on
>>>>> vacation
>>>>> >>>>>>> right now.
>>>>> >>>>>>>
>>>>> >>>>>>> On Mon, Aug 8, 2011 at 00:43, [email protected]
>>>>> >>>>>>> <[email protected]> wrote:
>>>>> >>>>>>>>
>>>>> >>>>>>>> Hi,
>>>>> >>>>>>>>
>>>>> >>>>>>>> there are a number of Issues with openJPA and the migration.
>>>>> >>>>>>>> The demo server is now updated but I needed several hours to
>>>>> get the
>>>>> >>>>>>>> basic functions running again.
>>>>> >>>>>>>>
>>>>> >>>>>>>> Also the shift with the user_ids in the import/export is still
>>>>> todo
>>>>> >>>>>>>> for the profiles_$userId thing.
>>>>> >>>>>>>> Somehow we could agree that we make a unique MD5 hash for each
>>>>> user
>>>>> >>>>>>>> for his profile path.
>>>>> >>>>>>>>
>>>>> >>>>>>>> The user sign up process is basically fixed, however when you
>>>>> >>>>>>>> repress the button to sign up again, or you just enter an
>>>>> existing user
>>>>> >>>>>>>> again, it will show the message that you have successfully
>>>>> signup, instead
>>>>> >>>>>>>> of showing a message that the user/login is already taken
>>>>> (which is what
>>>>> >>>>>>>> already implemented).
>>>>> >>>>>>>>
>>>>> >>>>>>>> I think there is really quite a bit to test and fix, the
>>>>> >>>>>>>> openmeetings service became unresponsible/did not react to any
>>>>> user
>>>>> >>>>>>>> interaction after just 30 minutes without any message about
>>>>> the reason in
>>>>> >>>>>>>> the logfile.
>>>>> >>>>>>>>
>>>>> >>>>>>>> Also there are Issue with the Caching. Example:
>>>>> >>>>>>>> I do create a new conference room with type restricted, max
>>>>> number
>>>>> >>>>>>>> 16, type public
>>>>> >>>>>>>> goto conference rooms, see the conference room,
>>>>> >>>>>>>> go back to administration, edit that room set max number to
>>>>> 100,
>>>>> >>>>>>>> goto conference rooms, see the conference room => STILL 16
>>>>> >>>>>>>>
>>>>> >>>>>>>> => That is really bad, cause to track down this problem you
>>>>> really
>>>>> >>>>>>>> will need to rethink the hole procedure of
>>>>> insert/update/delete and how it
>>>>> >>>>>>>> behaves by running in multiple Threads. This behaviour can
>>>>> lead to various
>>>>> >>>>>>>> unpredictable situations, strongly depending on what usage
>>>>> scenario and how
>>>>> >>>>>>>> many records you already have in the database
>>>>> >>>>>>>> I've spend weeks to track down such problems with the previous
>>>>> >>>>>>>> implementation, where the only really solution is to use the
>>>>> spring injected
>>>>> >>>>>>>> session and let spring manage the session-context. However it
>>>>> really needs
>>>>> >>>>>>>> some in depth testing. We can hardly release a package right
>>>>> now.
>>>>> >>>>>>>>
>>>>> >>>>>>>> Sebastian
>>>>> >>>>>>>>
>>>>> >>>>>>>>
>>>>> >>>>>>>> --
>>>>> >>>>>>>> Sebastian Wagner
>>>>> >>>>>>>> http://www.webbase-design.de
>>>>> >>>>>>>> http://openmeetings.googlecode.com
>>>>> >>>>>>>> http://www.wagner-sebastian.com
>>>>> >>>>>>>> [email protected]
>>>>> >>>>>>>
>>>>> >>>>>>>
>>>>> >>>>>>>
>>>>> >>>>>>> --
>>>>> >>>>>>> WBR
>>>>> >>>>>>> Maxim aka solomax
>>>>> >>>>>>
>>>>> >>>>>>
>>>>> >>>>>>
>>>>> >>>>>> --
>>>>> >>>>>> Sebastian Wagner
>>>>> >>>>>> http://www.webbase-design.de
>>>>> >>>>>> http://openmeetings.googlecode.com
>>>>> >>>>>> http://www.wagner-sebastian.com
>>>>> >>>>>> [email protected]
>>>>> >>>>>
>>>>> >>>>>
>>>>> >>>>>
>>>>> >>>>> --
>>>>> >>>>> WBR
>>>>> >>>>> Maxim aka solomax
>>>>> >>>>
>>>>> >>>>
>>>>> >>>>
>>>>> >>>> --
>>>>> >>>> Sebastian Wagner
>>>>> >>>> http://www.webbase-design.de
>>>>> >>>> http://openmeetings.googlecode.com
>>>>> >>>> http://www.wagner-sebastian.com
>>>>> >>>> [email protected]
>>>>> >>>
>>>>> >>>
>>>>> >>>
>>>>> >>> --
>>>>> >>> WBR
>>>>> >>> Maxim aka solomax
>>>>> >>
>>>>> >>
>>>>> >>
>>>>> >> --
>>>>> >> Sebastian Wagner
>>>>> >> http://www.webbase-design.de
>>>>> >> http://openmeetings.googlecode.com
>>>>> >> http://www.wagner-sebastian.com
>>>>> >> [email protected]
>>>>> >
>>>>> >
>>>>> >
>>>>> > --
>>>>> > Sebastian Wagner
>>>>> > http://www.webbase-design.de
>>>>> > http://openmeetings.googlecode.com
>>>>> > http://www.wagner-sebastian.com
>>>>> > [email protected]
>>>>> >
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> WBR
>>>> Maxim aka solomax
>>>>
>>>
>>>
>>>
>>> --
>>> WBR
>>> Maxim aka solomax
>>>
>>
>>
>>
>> --
>> WBR
>> Maxim aka solomax
>>
>
>
>
> --
> Sebastian Wagner
> http://www.webbase-design.de
> http://openmeetings.googlecode.com
> http://www.wagner-sebastian.com
> [email protected]
>



-- 
WBR
Maxim aka solomax

-- 
You received this message because you are subscribed to the Google Groups 
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/openmeetings-dev?hl=en.

Reply via email to