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]

-- 
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