I tried to disable jmx authentication on servicemix. 
And I use the following configuration in applicationContext : 

<beans xmlns="http://www.springframework.org/schema/beans";
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
        xsi:schemaLocation="http://www.springframework.org/schema/beans 
                          
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd";>

        <bean id="multipartResolver"
        
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
        </bean>

        <bean name="server"
                
class="org.springframework.jmx.support.MBeanServerConnectionFactoryBean">
                <property name="serviceUrl"
                        
value="service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi" />
        </bean>
        <bean id="jmxProxy" abstract="true"
                class="org.springframework.jmx.access.MBeanProxyFactoryBean">
                <property name="server" ref="server" />
        </bean>


        <bean id="jdbcAuditorMBean" parent="jmxProxy">
                <property name="objectName"
                
value="org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=JdbcAuditor"
/>
                <property name="proxyInterface"
                        value="org.apache.servicemix.jbi.audit.AuditorMBean" />
        </bean>

        <bean id="adminCommandsServiceMBean" parent="jmxProxy">
                <property name="objectName"
                
value="org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=AdminCommandsService"
/>
                <property name="proxyInterface"
                        
value="org.apache.servicemix.jbi.framework.AdminCommandsServiceMBean" />
        </bean>

        <bean id="registryMBean" parent="jmxProxy">
                <property name="objectName"
                
value="org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=Registry"
/>
                <property name="proxyInterface"
                        
value="org.apache.servicemix.jbi.framework.RegistryMBean" />
        </bean>

        <bean id="dotViewServiceMBean" parent="jmxProxy">
                <property name="objectName"
                
value="org.apache.servicemix:ContainerName=ServiceMix,Type=SystemService,Name=DotViewService"
/>
                <property name="proxyInterface"
                        
value="org.apache.servicemix.jbi.view.DotViewServiceMBean" />
        </bean>

        <bean id="proxyManager"
                class="org.apache.servicemix.web.model.ProxyManager">
                <constructor-arg ref="server" />
        </bean>

        <bean id="registry"
                class="org.apache.servicemix.web.model.Registry">
                <constructor-arg ref="proxyManager" />
                <constructor-arg ref="registryMBean" />
        </bean>

        <bean id="auditor" class="org.apache.servicemix.web.Auditor"
                scope="prototype">
                <constructor-arg ref="jdbcAuditorMBean" />
        </bean>
        <bean id="components" factory-bean="registry"
                factory-method="getComponents" scope="prototype" />
        <bean id="endpoints" factory-bean="registry"
                factory-method="getEndpoints" scope="prototype" />
        <bean id="serviceAssemblies" factory-bean="registry"
                factory-method="getServiceAssemblies" scope="prototype" />
        <bean id="serviceUnits" factory-bean="registry"
                factory-method="getServiceUnits" scope="prototype" />
        <bean id="sharedLibraries" factory-bean="registry"
                factory-method="getSharedLibraries" scope="prototype" />
        <bean id="component"
                class="org.apache.servicemix.web.ComponentFactoryBean">
                <property name="registry" ref="registry" />
        </bean>
        <bean id="endpoint"
                class="org.apache.servicemix.web.EndpointFactoryBean">
                <property name="registry" ref="registry" />
        </bean>
        <bean id="serviceUnit"
                class="org.apache.servicemix.web.ServiceUnitFactoryBean">
                <property name="registry" ref="registry" />
        </bean>
        <bean id="serviceAssembly"
                class="org.apache.servicemix.web.ServiceAssemblyFactoryBean">
                <property name="registry" ref="registry" />
        </bean>
        <bean id="sharedLibrary"
                class="org.apache.servicemix.web.SharedLibraryFactoryBean">
                <property name="registry" ref="registry" />
        </bean>

</beans>


Then the webapp starts without error, but when I choose a link in the menu,
I still have an error like : 

ERROR - [jsp]                          - "Servlet.service()" pour la servlet
jsp a généré une exception
org.springframework.jmx.access.InvalidInvocationException: Attribute
'componentNames' is not exposed on the management interface
        at
org.springframework.jmx.access.MBeanClientInterceptor.invokeAttribute(MBeanClientInterceptor.java:322)
        at
org.springframework.jmx.access.MBeanClientInterceptor.invoke(MBeanClientInterceptor.java:299)
        at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
        at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
        at $Proxy2.getComponentNames(Unknown Source)
        at 
org.apache.servicemix.web.model.Registry.getComponents(Registry.java:43)
        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:585)
        at
org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:118)
        at
org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:332)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:782)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:709)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:384)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:270)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
        at
org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:733)
        at
org.apache.servicemix.web.filter.ApplicationContextFilter$2.get(ApplicationContextFilter.java:157)
        at org.apache.commons.el.ArraySuffix.evaluate(ArraySuffix.java:218)
        at org.apache.commons.el.ComplexValue.evaluate(ComplexValue.java:145)
        at
org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:263)
        at
org.apache.commons.el.ExpressionEvaluatorImpl.evaluate(ExpressionEvaluatorImpl.java:190)
        at
org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:919)
        at
org.apache.jsp.components_jsp._jspx_meth_c_forEach_0(org.apache.jsp.components_jsp:122)
        at
org.apache.jsp.components_jsp._jspService(org.apache.jsp.components_jsp:91)
        at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325)
        at 
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at
org.apache.servicemix.web.filter.ApplicationContextFilter.doFilter(ApplicationContextFilter.java:81)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at
com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
        at
com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
        at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
        at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:595)


I don't understand why! 

Any idea?....



Keeg2 wrote:
> 
> Hello,
> 
> I'm trying to deploy the webapp Service web from
> apache-servicemix-web-3.2.war archive.
> 
> I would this application point to a remonte standalone servicemix
> instance. So I replaced in applicationContext.xml the following : 
> 
>   <bean id="jmxProxy" abstract="true"
> class="org.springframework.jmx.access.MBeanProxyFactoryBean">
>     <property name="server" ref="server"/>
>     <property name="useStrictCasing" value="false" />
>     <property name="connectOnStartup" value="false" />
>   </bean>
> 
> by : 
> 
> <bean id="busConnector"
> class="org.springframework.jmx.support.MBeanServerConnectionFactoryBean">
>               <property name="serviceUrl"
> value="service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi" />
>               <property name="environment">
>               <map>
>                       <entry key="jmx-username"  value="smx"/>
>                       <entry key="jmx-password"  value="smx"/>
>               </map>
>               </property>
>       </bean>
>       
>       <bean id="jmxProxy"
> class="org.springframework.jmx.access.MBeanProxyFactoryBean">
>               <property name="objectName" value="bean:name=testBean1" />
>               <property name="proxyInterface"
> value="java.lang.management.MemoryMXBean"/>
>               <property name="server" ref="busConnector" />
>       </bean> 
> 
> But I have this error : 
> 
> ERROR - ContextLoader                  - Context initialization failed
> org.springframework.beans.factory.BeanCreationException: Error creating
> bean with name 'busConnector' defined in ServletContext resource
> [/WEB-INF/applicationContext.xml]: Invocation of init method failed;
> nested exception is java.lang.IllegalArgumentException: Expected
> String[2], got null
> Caused by: 
> java.lang.IllegalArgumentException: Expected String[2], got null
>       at
> org.apache.servicemix.jbi.jmx.JaasAuthenticator.authenticate(JaasAuthenticator.java:73)
>       at
> javax.management.remote.rmi.RMIServerImpl.doNewClient(RMIServerImpl.java:214)
>       at
> javax.management.remote.rmi.RMIServerImpl.newClient(RMIServerImpl.java:181)
>       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:585)
>       at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
>       at sun.rmi.transport.Transport$1.run(Transport.java:153)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
>       at
> sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
>       at
> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
>       at java.lang.Thread.run(Thread.java:595)
>       at
> sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRemoteCall.java:247)
>       at
> sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:223)
>       at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:126)
>       at javax.management.remote.rmi.RMIServerImpl_Stub.newClient(Unknown
> Source)
>       at
> javax.management.remote.rmi.RMIConnector.getConnection(RMIConnector.java:2239)
>       at
> javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:271)
>       at
> javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:248)
>       at
> org.springframework.jmx.support.MBeanServerConnectionFactoryBean.connect(MBeanServerConnectionFactoryBean.java:126)
>       at
> org.springframework.jmx.support.MBeanServerConnectionFactoryBean.afterPropertiesSet(MBeanServerConnectionFactoryBean.java:114)
>       at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1201)
>       at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1171)
>       at
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:425)
>       at
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
>       at
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:156)
>       at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
>       at
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
>       at
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:284)
>       at
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
>       at
> org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:244)
>       at
> org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:187)
>       at
> org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49)
>       at
> org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3669)
>       at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:4104)
>       at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
>       at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
>       at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
>       at 
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442)
>       at
> org.apache.catalina.core.StandardService.start(StandardService.java:450)
>       at 
> org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
>       at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
>       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:585)
>       at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
>       at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
> 
> 
> I think that I have an authentication failure, but I can't fix it.
> 
> How can I pass an authentication to the
> org.springframework.jmx.support.MBeanServerConnectionFactoryBean class? (I
> tryed with "principal" and "credentials" instead of "jmx-user" and
> "jmx-password", and I had the same error).
> 
> 
> Thanks for reply.
> 

-- 
View this message in context: 
http://www.nabble.com/Servicemix-web-deployment-tf4943470s12049.html#a14177301
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to