Jarek, thank you! This helps. Finally I managed to run our application on Geronimo!
2008/6/24 Jarek Gawor <[EMAIL PROTECTED]>: > Start server with the following property: > > export > JAVA_OPTS=-Dorg.apache.cxf.jaxws.checkPublishEndpointPermission=false > > As per spec, app servers are supposed to block publishing new web > service endpoints via the Endpoint API. This system property will > disable the check and will allow you to publish a new endpoint. > > Jarek > > On Tue, Jun 24, 2008 at 3:07 PM, Alexey Kakunin <[EMAIL PROTECTED]> wrote: > > Hello again. > > > > Periodically I'm returning to this problem again and again - since it > looks > > very strange why application.correctly run on most server from Jetty & > > Tomcat and finishing JBoss and GlassFish - but cannot run on Geronimo. > > > > So, playing a little bit more I hope I managed classloader problems, but > now > > I cannot create services (CXF + Spring) due to security problems (Stack > > trace specified below). > > > > Does anybody has success experience with using CXF 2.1 & Spring 2.5 under > > Geronimo 2.1.1? > > > > Caused by: java.security.AccessControlException: access denied > > (javax.xml.ws.WebServicePermission publishEndpoint) > > at > > > java.security.AccessControlContext.checkPermission(AccessControlContext.java:323) > > at > > java.security.AccessController.checkPermission(AccessController.java:546) > > at > > > org.apache.cxf.jaxws.EndpointImpl.checkPublishPermission(EndpointImpl.java:375) > > at org.apache.cxf.jaxws.EndpointImpl.doPublish(EndpointImpl.java:241) > > at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:194) > > at org.apache.cxf.jaxws.EndpointImpl.publish(EndpointImpl.java:380) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > > at > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > > at java.lang.reflect.Method.invoke(Method.java:597) > > at > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:1412) > > at > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1373) > > at > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1333) > > ... 89 more > > > > 2008/5/6 Alexey Kakunin <[EMAIL PROTECTED]>: > >> > >> Jarek > >> thank you very much for advise - but it did not helped :( > >> > >> Can you explain me why this may help me (probably understanding this I > >> will able to find some other solution) > >> > >> Thank you again. > >> > >> 2008/5/5 Jarek Gawor <[EMAIL PROTECTED]>: > >>> > >>> Try adding <sys:filter>META-INF/spring</sys:filter> to your > >>> <sys:hidden-classes> element. That might help with the > >>> UnsatisfiedDependencyException but I'm not 100% sure. > >>> > >>> Jarek > >>> > >>> On Mon, Apr 28, 2008 at 9:50 AM, Alexey Kakunin <[EMAIL PROTECTED]> > >>> wrote: > >>> > Hello! I'm currently working with migrating quite big war-only > >>> > application > >>> > (http://www.emforge.org) to the Geronimo. > >>> > We are using Tomcat 5.5/6.0 for development, but already prepared > >>> > "special" > >>> > versions for JBossAS and GlassFis to provide better integration > >>> > (http://www.emforge.org/wiki/EmForgeJ2EEIntegration has a little bit > >>> > more > >>> > details). > >>> > > >>> > So, now the turn on Geronimo. > >>> > > >>> > This application is used many dependencies, some of which make sense > >>> > are: > >>> > * JSF-RI 1.2 & Facelets & RichFaces 3.2.0 > >>> > * Spring 2.5.2 > >>> > * CXF 2.0.5-incubator. > >>> > > >>> > During trying to run application on GlassFish I met some problems, > >>> > seems > >>> > related to the facts, that Geronimo is used a little bit another > >>> > versions: > >>> > * MyFaces 1.2 (as JSF Implementation) > >>> > * Spring 2.0.5 > >>> > * CXF 2.0.2 > >>> > > >>> > But before one general question: how to use some default (I suppose > >>> > jdbc/ActiveDS) DataSource in my application? > >>> > We need it because by default, we are using build-in file-based HSQL, > >>> > but in > >>> > these "special" pacjkages for J2EE servers we provide some better > >>> > integration - for example we are using some default DS as DataSource. > >>> > It > >>> > allows user to start application by simple deploying (without any > >>> > external > >>> > configuration) and avoid from using HSQL (it has some problems). > >>> > > >>> > I read documentation > >>> > (http://cwiki.apache.org/GMOxDOC21/deployment-plans.html) and trying > to > >>> > do > >>> > like it is described there - added resource into web.xml: > >>> > > >>> > <resource-ref> > >>> > <res-ref-name>jdbc/ActiveDS</res-ref-name> > >>> > <res-type>javax.sql.DataSource</res-type> > >>> > <res-auth>Container</res-auth> > >>> > <res-sharing-scope>Shareable</res-sharing-scope> > >>> > </resource-ref> > >>> > > >>> > And added dependency into geronimo-web.xml (may be it is not correct > - > >>> > but I > >>> > tried different ways): > >>> > > >>> > > >>> > <web-app xmlns="http://geronimo.apache.org/xml/ns/j2ee/web-2.0.1" > >>> > xmlns:nam="http://geronimo.apache.org/xml/ns/naming-1.2" > >>> > xmlns:sec="http://geronimo.apache.org/xml/ns/security-2.0" > >>> > > >>> > xmlns:sys="http://geronimo.apache.org/xml/ns/deployment-1.2"> > >>> > > >>> > <sys:environment> > >>> > <sys:moduleId> > >>> > <sys:groupId>org.emforge</sys:groupId> > >>> > <sys:artifactId>EmForge</sys:artifactId> > >>> > <sys:version>0.23</sys:version> > >>> > <sys:type>war</sys:type> > >>> > </sys:moduleId> > >>> > > >>> > <sys:hidden-classes> > >>> > > >>> > <sys:filter>org.jaxen,org.springframework,org.apache.cxf</sys:filter> > >>> > </sys:hidden-classes> > >>> > > >>> > <sys:dependencies> > >>> > <sys:dependency> > >>> > <sys:groupId>console.dbpool</sys:groupId> > >>> > <sys:artifactId>jdbc%2FActiveDS</sys:artifactId> > >>> > </sys:dependency> > >>> > </sys:dependencies> > >>> > </sys:environment> > >>> > <context-root>/EmForge</context-root> > >>> > <nam:resource-ref> > >>> > <nam:ref-name>jdbc/ActiveDS</nam:ref-name> > >>> > <nam:resource-link>jdbc/ActiveDS</nam:resource-link> > >>> > <nam:pattern> > >>> > <nam:groupId>console.dbpool</nam:groupId> > >>> > <nam:artifactId>jdbc%2FActiveDS</nam:artifactId> > >>> > <nam:name>jdbc/ActiveDS</nam:name> > >>> > </nam:pattern> > >>> > </nam:resource-ref> > >>> > > >>> > > >>> > But in this case I'm getting error during deployment: > >>> > > >>> > error: cvc-complex-type.2.4a: Expected elements > >>> > > >>> > 'non-overridable-classes@ > http://geronimo.apache.org/xml/ns/deployment-1.2 > >>> > inverse-classloading@ > http://geronimo.apache.org/xml/ns/deployment-1.2 > >>> > > >>> > suppress-default-environment@ > http://geronimo.apache.org/xml/ns/deployment-1.2' > >>> > instead of > >>> > '[EMAIL PROTECTED]://geronimo.apache.org/xml/ns/deployment-1.2' > >>> > here in element > >>> > [EMAIL PROTECTED]://geronimo.apache.org/xml/ns/deployment-1.2 > >>> > > >>> > > >>> > error: cvc-complex-type.2.4b: Element not allowed: > >>> > [EMAIL PROTECTED]://geronimo.apache.org/xml/ns/naming-1.2 in element > >>> > [EMAIL PROTECTED]://geronimo.apache.org/xml/ns/naming-1.2 > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > What I'm doing wrong here? > >>> > > >>> > > >>> > Another question - MyFaces and JSF-RI? > >>> > Is it possible to configure somehow my application to use JSF-RI > >>> > instead of > >>> > MyFaces. Problem is - we have some custom renderers, which > >>> > implementation > >>> > is inherited from com.sun renderers, so - when I'm deploying > >>> > application > >>> > into Geronimo - I'm getting class-not-found error. > >>> > > >>> > Last Question - Implementing Web-Services with using CXF & Spring. > >>> > Some services in our application wrapped with CXF-based Web-Services > >>> > Implementation. For doing it we have defined in spring context: > >>> > > >>> > <!-- Load CXF modules from cxf.jar --> > >>> > <import resource="classpath:META-INF/cxf/cxf.xml" /> > >>> > <import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" > /> > >>> > <import resource="classpath:META-INF/cxf/cxf-servlet.xml" /> > >>> > > >>> > <!-- Enable message logging using the CXF logging feature --> > >>> > <cxf:bus> > >>> > <cxf:features> > >>> > <cxf:logging/> > >>> > </cxf:features> > >>> > </cxf:bus> > >>> > > >>> > > >>> > <!-- Service endpoint --> > >>> > <!-- See http://incubator.apache.org/cxf/faq.html regarding CXF > + > >>> > Spring > >>> > AOP --> > >>> > <jaxws:endpoint id="bpmWsService" > >>> > implementorClass="org.emforge.jbpm.BpmServiceImpl" > >>> > implementor="#bpmService" > >>> > address="/org.emforge.BpmService"> > >>> > <jaxws:inInterceptors> > >>> > <bean > >>> > class="org.apache.cxf.binding.soap.saaj.SAAJInInterceptor"/> > >>> > <ref bean="wss4jInConfiguration"/> > >>> > > >>> > <bean > >>> > class="ru.emdev.EmForge.security.ValidateUserTokenInterceptor"/> > >>> > </jaxws:inInterceptors> > >>> > </jaxws:endpoint> > >>> > > >>> > > >>> > But I'm getting followed error during starting application: > >>> > > >>> > org.springframework.beans.factory.UnsatisfiedDependencyException: > Error > >>> > creating bean with name 'bpmWsService': Unsatisfied dependency > >>> > expressed > >>> > through constructor argument with index 2 of type [java.lang.String]: > >>> > Ambiguous constructor argument types - did you specify the correct > bean > >>> > references as constructor arguments? > >>> > > >>> > > >>> > I tried both - put org.apache.cxf and org.springframework into > >>> > hidden-classes via: > >>> > <sys:hidden-classes> > >>> > <sys:filter>org.jaxen</sys:filter> > >>> > <sys:filter>org.springframework</sys:filter> > >>> > <sys:filter>org.apache.cxf</sys:filter> > >>> > </sys:hidden-classes> > >>> > > >>> > But still getting this error. > >>> > > >>> > I tried to hide classes via: > >>> > <sys:hidden-classes> > >>> > > >>> > <sys:filter>org.jaxen,org.springframework,org.apache.cxf</sys:filter> > >>> > </sys:hidden-classes> > >>> > > >>> > but it is not work at all (I'm starting to get errors related to > >>> > org.jaxen). > >>> > > >>> > I tried to switch my application to cxf-2.0.2 (since for me it is not > >>> > so > >>> > important which version is used and I like the idea to remove some > >>> > dependencies from our war-file to make is smaller) - same effect. > >>> > I tried to remove cxf from my war-file libs (so, to use only cxf from > >>> > geronimo) - I've got error ClassNotFound on servlet definition: > >>> > > >>> > <servlet> > >>> > <servlet-name>CXFServlet</servlet-name> > >>> > <servlet-class> > >>> > org.apache.cxf.transport.servlet.CXFServlet > >>> > </servlet-class> > >>> > </servlet> > >>> > <servlet-mapping> > >>> > <servlet-name>CXFServlet</servlet-name> > >>> > <url-pattern>/ws</url-pattern> > >>> > </servlet-mapping> > >>> > <servlet-mapping> > >>> > <servlet-name>CXFServlet</servlet-name> > >>> > <url-pattern>/ws/*</url-pattern> > >>> > </servlet-mapping> > >>> > > >>> > > >>> > I looked into tutorials - but found only tutorial about writting > >>> > web-services for Geronimo with using Axis2 - not CXF... > >>> > > >>> > > >>> > So, really do not know what is a correct way to define CXF-based > >>> > web-services in Geronimo. Does anybody has any suggestions. > >>> > > >>> > > >>> > I will be happy to any help. For us it is really important to add > >>> > support > >>> > for Geronimo - in this case our application with run on all > >>> > most-important > >>> > Open-Source J2EE servers. > >>> > > >>> > -- > >>> > With best regards, > >>> > Alexey Kakunin > >> > >> > >> > >> -- > >> With best regards, > >> Alexey Kakunin > > > > > > -- > > With best regards, > > Alexey Kakunin > -- With best regards, Alexey Kakunin