I do not think openjpa register any osgi services. Can you check whether the package is exposed? Also verify the status of the openjpa bundle.
osgi> p org.apache.openjpa.persistence osgi> ss openjpa On Thu, May 4, 2017 at 7:01 PM, Thomas LEGRAND <[email protected] > wrote: > Hello again :) > > I retrieved the openjpa-all-2.4.2.jar file and dropped it in the > <WSO2_ESB_HOME>/lib > directory to let the runtime taking care of the bundle generation during > the startup. The effect was the generation of the file > openjpa_all_2.4.2_1.0.0.jar in the directory <WSO2_ESB_HOME>/dropins. > > I restarted the EI with: > > D:\ProjetESB\wso2ei-6.0.0\bin> .\integrator.bat -DosgiConsole=19444 > > So I can connect to the OSGI console via telnet. But, when I try to > retrieve the objectclasses starting with org.apache.openjpa.*, I have > nothing :( > > osgi> services (objectclass=org.apache.openjpa.*) > "No registered services." > > Am I missing something? > > Regards, > > Thomas > > 2017-05-04 10:49 GMT+02:00 KasunG Gajasinghe <[email protected]>: > >> Hi Thomas, >> >> Well, the connector itself cannot be deployed as an osgi bundle. But, you >> can call classes in osgi bundles from your connector. So, place your JPA >> logic in an osgi bundle and add it to dropins/ folder. Then, call that from >> your connector. >> >> This should give you flexibility over your classloading. I cannot comment >> on JPA stuff though. >> >> On Thu, May 4, 2017 at 1:26 PM, Thomas LEGRAND < >> [email protected]> wrote: >> >>> Hello KasunG, >>> >>> I forgot to mention that I am using wso2ei-6.0.0. >>> >>> During the build of my connector, I noticed that a .jar is created with >>> the .zip for the connector so I tried to deploy it. Actually, I tried the >>> following directories and my sequence does not find any of the components >>> like if my connector was not deployed : >>> - <WSO2_ESB_HOME>/repository/components/dropins (this directory did not >>> exist so I created it) >>> - <WSO2_ESB_HOME>/dropins >>> >>> In addition, I don't find anything in the documentation mentioning that >>> we can deploy connectors as an OSGi bundle :( >>> >>> When I deploy the .zip of the connector via the interface, it is >>> deployed in <WSO2_ESB_HOME>/repository/deployment/server/synapse-libs >>> which is the same directory used by Synapse: >>> http://synapse.apache.org/userguide/template_library.html >>> >>> Concerning the "architecture" of my component, I deployed a .zip with a >>> META-INF directory containing the persistence.xml but I don't think it is >>> used like the absence of mention in the Synaspe documentation above. :) >>> Then, I call OpenJPA with the following lines: >>> >>> EntityManagerFactory emf = Persistence.createEntityManage >>> rFactory("my-pu"); >>> EntityManager mgr = emf.createEntityManager(); >>> >>> But then, I have the exception. >>> >>> I made a topic on StackOverflow one or two weeks ago: >>> https://stackoverflow.com/questions/43538743/wso2-is-there-a >>> -way-to-use-jpa-in-a-custom-connector >>> >>> I you know a documentation to generate an OSGi bundle for a connector, I >>> am very interested. :) >>> >>> Regards, >>> >>> Thomas >>> >>> 2017-05-03 18:29 GMT+02:00 KasunG Gajasinghe <[email protected]>: >>> >>>> You are working in an OSGi environment, so you need to be thinking from >>>> the osgi classloading perspective. Each osgi bundle under >>>> repository/components/{plugins,dropins} has its own classloader and a >>>> classpath. >>>> >>>> Hence, the place you put your persistence.xml is important. I'm not >>>> sure how you call OpenJPA, so I cannot comment on what steps to follow. But >>>> in essence, re-build your connector as an osgi bundle (its just a jar with >>>> a set of manifest entries in MANIFEST.MF), and place it in >>>> repository/components/dropins. I have not tested this myself though. >>>> >>>> Regards, >>>> KasunG >>>> >>>> >>>> On Wed, May 3, 2017 at 8:38 PM, Thomas LEGRAND < >>>> [email protected]> wrote: >>>> >>>>> Hello everybody, >>>>> >>>>> I am currently writing a custom connector to retrieve information from >>>>> a database. Because the mediators to do so does not fit my needs, I am >>>>> using a custom Java class which is currently implemented to retrieve a >>>>> DataSource via the JNDI name I configured in the ESB interface. That works >>>>> nicely :) >>>>> >>>>> But then, for maintenance purpose, I would like to use JPA >>>>> (preferably, the OpenJPA implementation :)) but it is like the >>>>> persistence.xml is not even read. :( >>>>> My libraries are placed in the lib/ directory in the generated zip of >>>>> my connector and I don't have any problem using the classes of OpenJPA. >>>>> Actually, just this error message appears: >>>>> >>>>> 1 INFO [PassThroughMessageProcessor-313] openjpa.Runtime - Starting >>>>> OpenJPA 2.4.0 org.apache.openjpa.persistence.ArgumentException: The >>>>> persistence provi der is attempting to use properties in the >>>>> persistence.xml file to resolve the data source. A Java Database >>>>> Connectivity (JDBC) driver or data source class name must be specified in >>>>> the openjpa.ConnectionDriverName or javax.persistence.jdbc.driver >>>>> property. >>>>> The following properties are available in the configuration: >>>>> "org.apache.openjpa.jdbc.conf.JDBCConfigurationImpl@442ce698". >>>>> >>>>> In the persistence.xml, you have the following content : >>>>> >>>>> <?xml version="1.0" encoding="UTF-8"?> >>>>> <persistence version="2.0" xmlns="http://java.sun.com/xml >>>>> /ns/persistence" >>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >>>>> xsi:schemaLocation="http://java.sun.com/xml/ns/persistence >>>>> http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> >>>>> <persistence-unit name="my-pu" transaction-type="RESOURCE_LOCAL"> >>>>> <provider>org.apache.openjpa.persistence.PersistenceProvider >>>>> Impl</provider> >>>>> <jta-data-source>jdbc/MyDataSource</jta-data-source> >>>>> </persistence-unit> >>>>> </persistence> >>>>> >>>>> Is there some hidden magic to make it work? >>>>> >>>>> Thank you :) >>>>> >>>>> Regards, >>>>> >>>>> Thomas >>>>> >>>>> _______________________________________________ >>>>> Dev mailing list >>>>> [email protected] >>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> >>>> *Kasun Gajasinghe*Associate Technical Lead, WSO2 Inc. >>>> email: kasung AT spamfree wso2.com >>>> linked-in: http://lk.linkedin.com/in/gajasinghe >>>> blog: http://kasunbg.org >>>> phone: +1 650-745-4499 <(650)%20745-4499>, 77 678 0813 >>>> >>>> >>> >>> >> >> >> -- >> >> *Kasun Gajasinghe*Associate Technical Lead, WSO2 Inc. >> email: kasung AT spamfree wso2.com >> linked-in: http://lk.linkedin.com/in/gajasinghe >> blog: http://kasunbg.org >> phone: +1 650-745-4499 <(650)%20745-4499>, 77 678 0813 >> >> > > -- *Kasun Gajasinghe*Associate Technical Lead, WSO2 Inc. email: kasung AT spamfree wso2.com linked-in: http://lk.linkedin.com/in/gajasinghe blog: http://kasunbg.org phone: +1 650-745-4499, 77 678 0813
_______________________________________________ Dev mailing list [email protected] http://wso2.org/cgi-bin/mailman/listinfo/dev
