[jboss-user] [JBossWS] - Problems ejb call and jaxrpc / principal
penguine
do-not-reply at jboss.com
Tue Feb 20 12:30:25 EST 2007
Hallo Thomas,
The HelloBean in my/your example:
String urlstr = "http://localhost:8080/ws/RoleSecured?wsdl";
String argument = "testmich";
System.out.println("Contacting webservice at " + urlstr);
URL url = new URL(urlstr);
QName qname = new QName("http://hello.ws.jboss.org/", "HelloService");
ServiceFactory factory = ServiceFactory.newInstance();
Service service = factory.createService(url, qname);
Hello hello = (Hello) service.getPort(Hello.class);
Stub stub = (Stub) hello;
stub._setProperty(Stub.USERNAME_PROPERTY, "kermit");
stub._setProperty(Stub.PASSWORD_PROPERTY, "thefrog");
System.out.println("hello.hello(" + argument + ")");
System.out.println("output:" + hello.hello(argument)); <-- here the exception occurs
I become the following error:
Contacting webservice at http://localhost:8080/ws/RoleSecured?wsdl
hello.hello(testmich)
java.rmi.RemoteException: Call invocation failed with code [Client] because of: java.rmi.AccessException: SecurityException; nested exception is:
java.lang.SecurityException: Insufficient method permissions, principal=null, ejbName=HelloBean, method=hello, interface=SERVICE_ENDPOINT, requiredRoles=[friend], principalRoles=[]; nested exception is:
javax.xml.rpc.soap.SOAPFaultException: java.rmi.AccessException: SecurityException; nested exception is:
java.lang.SecurityException: Insufficient method permissions, principal=null, ejbName=HelloBean, method=hello, interface=SERVICE_ENDPOINT, requiredRoles=[friend], principalRoles=[]
at org.jboss.ws.common.CommonClient.invoke(CommonClient.java:331)
at org.jboss.ws.jaxrpc.CallImpl.invokeInternal(CallImpl.java:560)
at org.jboss.ws.jaxrpc.CallImpl.invoke(CallImpl.java:338)
at org.jboss.ws.jaxrpc.CallProxy.invoke(CallProxy.java:148)
at $Proxy0.hello(Unknown Source)
at de.mycompany.it.webservice.test.TestHelloClientII.main(TestHelloClientII.java:67)
Caused by: javax.xml.rpc.soap.SOAPFaultException: java.rmi.AccessException: SecurityException; nested exception is:
java.lang.SecurityException: Insufficient method permissions, principal=null, ejbName=HelloBean, method=hello, interface=SERVICE_ENDPOINT, requiredRoles=[friend], principalRoles=[]
at org.jboss.ws.jaxrpc.SOAPFaultExceptionHelper.getSOAPFaultException(SOAPFaultExceptionHelper.java:100)
at org.jboss.ws.common.CommonSOAPBinding.unbindResponseMessage(CommonSOAPBinding.java:574)
at org.jboss.ws.common.CommonClient.invoke(CommonClient.java:319)
... 5 more
Exception in thread "main"
If I do a normal lookup to my bean as you do it in your examples it works.
But if I try to use the webserver to access the wsdl like my example above I don´t have a valid principal setting.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4019457#4019457
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4019457
More information about the jboss-user
mailing list