[
https://issues.jboss.org/browse/AS7-2809?page=com.atlassian.jira.plugin.s...
]
Carlo de Wolf updated AS7-2809:
-------------------------------
Git Pull Request:
https://github.com/wolfc/jboss-as/tree/AS7-2809 (was:
https://github.com/wolfc/jboss-as/tree/AS7-2809)
Description:
The security-domain in jboss-ejb3.xml doesn't work with ejb2x webservice endpoint and
throws following exception :
{noformat}
Caused by: java.lang.RuntimeException: JBAS014497: Method named remove with params
[interface javax.ejb.Handle] not found on component class class
com.sun.ts.tests.webservices.sec.ejb.certificate.HelloCertificateBean
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.findComponentMethod(EJBMethodSecurityMetaData.java:223)
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.isAccessDenied(EJBMethodSecurityMetaData.java:114)
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.<init>(EJBMethodSecurityMetaData.java:72)
at
org.jboss.as.ejb3.security.EJBSecurityViewConfigurator.configure(EJBSecurityViewConfigurator.java:76)
at
org.jboss.as.ee.component.ComponentDescription$DefaultComponentConfigurator.configure(ComponentDescription.java:917)
at
org.jboss.as.ee.component.deployers.EEModuleConfigurationProcessor.deploy(EEModuleConfigurationProcessor.java:81)
... 6 more
{noformat}
{code:xml|title=jboss-ejb3.xml}
<jboss:jboss>
<jboss:enterprise-beans>
<jboss:ejb>
<ejb-name
xmlns="http://java.sun.com/xml/ns/javaee">SecEjbHello</ej...
<jboss:destination-jndi-name>SecEjbCertificate</jboss:destination-jndi-name>
</jboss:ejb>
</jboss:enterprise-beans>
<assembly-descriptor
xmlns="http://java.sun.com/xml/ns/javaee">
<security:security xmlns:security="urn:security">
<security:security-domain>cert</security:security-domain>
<ejb-name>SecEjbHello</ejb-name>
</security:security>
</assembly-descriptor>
</jboss:jboss>
{code}
{code:xml|title=ejb-jar.xml}
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar version="2.1"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd">
<display-name>SecEjbHello</display-name>
<enterprise-beans>
<session>
<display-name>SecEjbHello</display-name>
<ejb-name>SecEjbHello</ejb-name>
<home>org.jboss.test.HelloHome</home>
<remote>org.jboss.test.HelloRemote</remote>
<service-endpoint>org.jboss.test.HelloInterface</service-endpoint>
<ejb-class>org.jboss.test.HelloBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Bean</transaction-type>
<security-identity>
<description></description>
<use-caller-identity></use-caller-identity>
</security-identity>
</session>
</enterprise-beans>
</ejb-jar>
{code}
{code:xml|title=jboss-webservices.xml}
<?xml version="1.0" encoding="utf-8"?>
<webservices
xmlns="http://www.jboss.com/xml/ns/javaee">
<port-component>
<ejb-name>SecEjbHello</ejb-name>
<port-component-name>HelloPC</port-component-name>
<port-component-uri>Hello/ejb</port-component-uri>
<auth-method>CLIENT-CERT</auth-method>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</port-component>
<webservice-description>
<webservice-description-name>Hello</webservice-description-name>
<wsdl-publish-location>file:/tmp/hello.wsdl</wsdl-publish-location>
</webservice-description>
</webservices>
{code}
was:
The security-domain in jboss-ejb3.xml doesn't work with ejb2x webservice endpoint and
throws following exception :
Caused by: java.lang.RuntimeException: JBAS014497: Method named remove with params
[interface javax.ejb.Handle] not found on component class class
com.sun.ts.tests.webservices.sec.ejb.certificate.HelloCertificateBean
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.findComponentMethod(EJBMethodSecurityMetaData.java:223)
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.isAccessDenied(EJBMethodSecurityMetaData.java:114)
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.<init>(EJBMethodSecurityMetaData.java:72)
at
org.jboss.as.ejb3.security.EJBSecurityViewConfigurator.configure(EJBSecurityViewConfigurator.java:76)
at
org.jboss.as.ee.component.ComponentDescription$DefaultComponentConfigurator.configure(ComponentDescription.java:917)
at
org.jboss.as.ee.component.deployers.EEModuleConfigurationProcessor.deploy(EEModuleConfigurationProcessor.java:81)
... 6 more
---jboss-ejb3.xml--
<jboss:jboss>
<jboss:enterprise-beans>
<jboss:ejb>
<ejb-name
xmlns="http://java.sun.com/xml/ns/javaee">SecEjbHello</ej...
<jboss:destination-jndi-name>SecEjbCertificate</jboss:destination-jndi-name>
</jboss:ejb>
</jboss:enterprise-beans>
<assembly-descriptor
xmlns="http://java.sun.com/xml/ns/javaee">
<security:security xmlns:security="urn:security">
<security:security-domain>cert</security:security-domain>
<ejb-name>SecEjbHello</ejb-name>
</security:security>
</assembly-descriptor>
</jboss:jboss>
----ejb-jar.xml----
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar version="2.1"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd">
<display-name>SecEjbHello</display-name>
<enterprise-beans>
<session>
<display-name>SecEjbHello</display-name>
<ejb-name>SecEjbHello</ejb-name>
<home>org.jboss.test.HelloHome</home>
<remote>org.jboss.test.HelloRemote</remote>
<service-endpoint>org.jboss.test.HelloInterface</service-endpoint>
<ejb-class>org.jboss.test.HelloBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Bean</transaction-type>
<security-identity>
<description></description>
<use-caller-identity></use-caller-identity>
</security-identity>
</session>
</enterprise-beans>
</ejb-jar>
---jboss-webservices.xml--
<?xml version="1.0" encoding="utf-8"?>
<webservices
xmlns="http://www.jboss.com/xml/ns/javaee">
<port-component>
<ejb-name>SecEjbHello</ejb-name>
<port-component-name>HelloPC</port-component-name>
<port-component-uri>Hello/ejb</port-component-uri>
<auth-method>CLIENT-CERT</auth-method>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</port-component>
<webservice-description>
<webservice-description-name>Hello</webservice-description-name>
<wsdl-publish-location>file:/tmp/hello.wsdl</wsdl-publish-location>
</webservice-description>
</webservices>
security-domain in jboss-ejb3.xml does not work with service
endpoint.
-----------------------------------------------------------------------
Key: AS7-2809
URL:
https://issues.jboss.org/browse/AS7-2809
Project: Application Server 7
Issue Type: Bug
Components: EJB
Affects Versions: 7.1.0.Beta1
Reporter: Jim Ma
Assignee: Carlo de Wolf
Fix For: 7.1.0.Final
The security-domain in jboss-ejb3.xml doesn't work with ejb2x webservice endpoint and
throws following exception :
{noformat}
Caused by: java.lang.RuntimeException: JBAS014497: Method named remove with params
[interface javax.ejb.Handle] not found on component class class
com.sun.ts.tests.webservices.sec.ejb.certificate.HelloCertificateBean
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.findComponentMethod(EJBMethodSecurityMetaData.java:223)
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.isAccessDenied(EJBMethodSecurityMetaData.java:114)
at
org.jboss.as.ejb3.security.EJBMethodSecurityMetaData.<init>(EJBMethodSecurityMetaData.java:72)
at
org.jboss.as.ejb3.security.EJBSecurityViewConfigurator.configure(EJBSecurityViewConfigurator.java:76)
at
org.jboss.as.ee.component.ComponentDescription$DefaultComponentConfigurator.configure(ComponentDescription.java:917)
at
org.jboss.as.ee.component.deployers.EEModuleConfigurationProcessor.deploy(EEModuleConfigurationProcessor.java:81)
... 6 more
{noformat}
{code:xml|title=jboss-ejb3.xml}
<jboss:jboss>
<jboss:enterprise-beans>
<jboss:ejb>
<ejb-name
xmlns="http://java.sun.com/xml/ns/javaee">SecEjbHello</ej...
<jboss:destination-jndi-name>SecEjbCertificate</jboss:destination-jndi-name>
</jboss:ejb>
</jboss:enterprise-beans>
<assembly-descriptor
xmlns="http://java.sun.com/xml/ns/javaee">
<security:security xmlns:security="urn:security">
<security:security-domain>cert</security:security-domain>
<ejb-name>SecEjbHello</ejb-name>
</security:security>
</assembly-descriptor>
</jboss:jboss>
{code}
{code:xml|title=ejb-jar.xml}
<?xml version="1.0" encoding="UTF-8"?>
<ejb-jar version="2.1"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/ejb-jar_2_1.xsd">
<display-name>SecEjbHello</display-name>
<enterprise-beans>
<session>
<display-name>SecEjbHello</display-name>
<ejb-name>SecEjbHello</ejb-name>
<home>org.jboss.test.HelloHome</home>
<remote>org.jboss.test.HelloRemote</remote>
<service-endpoint>org.jboss.test.HelloInterface</service-endpoint>
<ejb-class>org.jboss.test.HelloBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Bean</transaction-type>
<security-identity>
<description></description>
<use-caller-identity></use-caller-identity>
</security-identity>
</session>
</enterprise-beans>
</ejb-jar>
{code}
{code:xml|title=jboss-webservices.xml}
<?xml version="1.0" encoding="utf-8"?>
<webservices
xmlns="http://www.jboss.com/xml/ns/javaee">
<port-component>
<ejb-name>SecEjbHello</ejb-name>
<port-component-name>HelloPC</port-component-name>
<port-component-uri>Hello/ejb</port-component-uri>
<auth-method>CLIENT-CERT</auth-method>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</port-component>
<webservice-description>
<webservice-description-name>Hello</webservice-description-name>
<wsdl-publish-location>file:/tmp/hello.wsdl</wsdl-publish-location>
</webservice-description>
</webservices>
{code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see:
http://www.atlassian.com/software/jira