[JBoss JIRA] Created: (JBWS-1976) Investigate how to decouple RM Sender/RM Reciever from Client Proxy/Server Endpoint
by Richard Opalka (JIRA)
Investigate how to decouple RM Sender/RM Reciever from Client Proxy/Server Endpoint
-----------------------------------------------------------------------------------
Key: JBWS-1976
URL: http://jira.jboss.com/jira/browse/JBWS-1976
Project: JBoss Web Services
Issue Type: Task
Security Level: Public (Everyone can see)
Components: jbossws-native
Reporter: Richard Opalka
Assigned To: Richard Opalka
Fix For: jbossws-native-2.0.4
Thomas Diesler wrote:
In my understanding the RM Sender/Receiver must be high available (HA) components such that the Client can (always)
communicate with the RM Sender and likewise the RM Sender can always communicate with the RM Receiver.
Client <--> RM Sender <-------> RM Receiver <--> Endpoint
QoS QoS
On the contrary, if the RM Sender is coupled with the client proxy or the RM Receiver is coupled with the Endpoint,
it would in my opinion defeat the purpose of RM. In other words, if the RM Receiver is only available if the Endpoint
is available, the client might as well talk to the Endpoint directly.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 9 months
[JBoss JIRA] Created: (JBWS-1985) Caltalog resolver not used when reading web.xml during web serivce deployment.
by Richard Tesh (JIRA)
Caltalog resolver not used when reading web.xml during web serivce deployment.
------------------------------------------------------------------------------
Key: JBWS-1985
URL: http://jira.jboss.com/jira/browse/JBWS-1985
Project: JBoss Web Services
Issue Type: Bug
Security Level: Public (Everyone can see)
Environment: Windows XP SP2, JDK1.5.0_11, JBoss 4.2.2.GA
Reporter: Richard Tesh
Receive this exception when deploying a webservice.
14:09:41,718 ERROR [MainDeployer] Could not create deployment: file:/C:/java/jb
ss-4.2.2.GA/server/default/tmp/deploy/tmp64915odyssey.ear-contents/authenticati
nws.war
javax.xml.ws.WebServiceException: org.dom4j.DocumentException: java.sun.com Nes
ed exception: java.sun.com
at org.jboss.wsf.container.jboss42.WebXMLRewriterImpl.rewriteWebXml(Web
MLRewriterImpl.java:95)
at org.jboss.wsf.container.jboss42.ModifyWebMetaDataDeploymentAspect.cr
ate(ModifyWebMetaDataDeploymentAspect.java:53)
at org.jboss.wsf.framework.deployment.DeploymentAspectManagerImpl.deplo
(DeploymentAspectManagerImpl.java:115)
at org.jboss.wsf.container.jboss42.ArchiveDeployerHook.deploy(ArchiveDe
loyerHook.java:97)
at org.jboss.wsf.container.jboss42.DeployerInterceptor.create(DeployerI
terceptor.java:79)
at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor
create(SubDeployerInterceptorSupport.java:180)
at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterc
ptor.java:91)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker
java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy45.create(Unknown Source)
at org.jboss.deployment.MainDeployer.create(MainDeployer.java:969)
at org.jboss.deployment.MainDeployer.create(MainDeployer.java:959)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:818)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
at sun.reflect.GeneratedMethodAccessor21.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcce
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatc
er.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractIntercep
or.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(Model
BeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker
java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy9.deploy(Unknown Source)
at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeployme
tScanner.java:421)
at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeployment
canner.java:610)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread
doScan(AbstractDeploymentScanner.java:263)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread
loop(AbstractDeploymentScanner.java:274)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread
run(AbstractDeploymentScanner.java:225)
Caused by: org.dom4j.DocumentException: java.sun.com Nested exception: java.sun
com
at org.dom4j.io.SAXReader.read(SAXReader.java:484)
at org.dom4j.io.SAXReader.read(SAXReader.java:343)
at org.jboss.wsf.container.jboss42.WebXMLRewriterImpl.rewriteWebXml(Web
MLRewriterImpl.java:108)
at org.jboss.wsf.container.jboss42.WebXMLRewriterImpl.rewriteWebXml(Web
MLRewriterImpl.java:87)
... 33 more
This is lines 107 and 108 of org.jboss.wsf.container.jboss42.WebXMLRewriterImpl
SAXReader reader = new SAXReader();
Document document = reader.read(source);
So it is not using an Entity resolver and as I am behind a firewall I cannot resolve java.sun.com from the web.xml doctype:
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
Regards,
Richard
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 9 months
[JBoss JIRA] Commented: (JBWS-1172) Support schema validation for incoming messages
by David Owens (JIRA)
[ http://jira.jboss.com/jira/browse/JBWS-1172?page=comments#action_12399727 ]
David Owens commented on JBWS-1172:
-----------------------------------
Yeah, my intent in that post was a way that works, but most likely does not solve this problem in a "standard" manner, but perhaps some or part of the ideas might help form a solution. Of course Mr. Diesler is a lot smarter than me. The key may be separating the parts which can be validated from the WSDL since, as I understand it, the WSDL does not define information to the granularity of XSDs.
> Support schema validation for incoming messages
> -----------------------------------------------
>
> Key: JBWS-1172
> URL: http://jira.jboss.com/jira/browse/JBWS-1172
> Project: JBoss Web Services
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: jbossws-native
> Reporter: Thomas Diesler
> Assigned To: Thomas Diesler
> Fix For: jbossws-native-2.0.4
>
>
> I am trying to use JBOSSWS 1.0.2. and JBOSSAS-4.0.4GA
> I am starting with a WSDL file that contains a schema. I used WSTOOLS to generate the appropriate artifacts
> I would like to use DOCUMENT/LITERAL wrapped style and I would like to turn on schema validation of my XML instances against a schema defined in the WSDL (on receipt of the message the server does the validation ?).
> Looking through the sources, I see that JAXBDeserializer (jbossws-core.jar) calls JAXBUnmarshallerImpl which calls UnmarshallerImpl (jboss-xml-binding.jar) which does the parsing of the XML.
> I do not see any call to UnmarshallerImpl.setSchemaValidation in this call graph. Should this be called to turn on to do Schema Validation ? If so how and where ?
> Is Schema Validation for Document/Literal something that JBOSSWS 1.0.2 supports ?
> How does one turn on XML Schema validation in JBOSSWS ?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 9 months
[JBoss JIRA] Commented: (JBWS-1172) Support schema validation for incoming messages
by Richard Opalka (JIRA)
[ http://jira.jboss.com/jira/browse/JBWS-1172?page=comments#action_12399726 ]
Richard Opalka commented on JBWS-1172:
--------------------------------------
However xml beans mentioned there are not JCP standard,
so JAXB based schema validation is the preferred way.
If we will fix this issue it should be turned of by default (performance).
> Support schema validation for incoming messages
> -----------------------------------------------
>
> Key: JBWS-1172
> URL: http://jira.jboss.com/jira/browse/JBWS-1172
> Project: JBoss Web Services
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: jbossws-native
> Reporter: Thomas Diesler
> Assigned To: Thomas Diesler
> Fix For: jbossws-native-2.0.4
>
>
> I am trying to use JBOSSWS 1.0.2. and JBOSSAS-4.0.4GA
> I am starting with a WSDL file that contains a schema. I used WSTOOLS to generate the appropriate artifacts
> I would like to use DOCUMENT/LITERAL wrapped style and I would like to turn on schema validation of my XML instances against a schema defined in the WSDL (on receipt of the message the server does the validation ?).
> Looking through the sources, I see that JAXBDeserializer (jbossws-core.jar) calls JAXBUnmarshallerImpl which calls UnmarshallerImpl (jboss-xml-binding.jar) which does the parsing of the XML.
> I do not see any call to UnmarshallerImpl.setSchemaValidation in this call graph. Should this be called to turn on to do Schema Validation ? If so how and where ?
> Is Schema Validation for Document/Literal something that JBOSSWS 1.0.2 supports ?
> How does one turn on XML Schema validation in JBOSSWS ?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 9 months
[JBoss JIRA] Commented: (JBWS-1172) Support schema validation for incoming messages
by Richard Opalka (JIRA)
[ http://jira.jboss.com/jira/browse/JBWS-1172?page=comments#action_12399725 ]
Richard Opalka commented on JBWS-1172:
--------------------------------------
There's also some thread in our user forum with another potential solution: http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4130127#4130127
> Support schema validation for incoming messages
> -----------------------------------------------
>
> Key: JBWS-1172
> URL: http://jira.jboss.com/jira/browse/JBWS-1172
> Project: JBoss Web Services
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: jbossws-native
> Reporter: Thomas Diesler
> Assigned To: Thomas Diesler
> Fix For: jbossws-native-2.0.4
>
>
> I am trying to use JBOSSWS 1.0.2. and JBOSSAS-4.0.4GA
> I am starting with a WSDL file that contains a schema. I used WSTOOLS to generate the appropriate artifacts
> I would like to use DOCUMENT/LITERAL wrapped style and I would like to turn on schema validation of my XML instances against a schema defined in the WSDL (on receipt of the message the server does the validation ?).
> Looking through the sources, I see that JAXBDeserializer (jbossws-core.jar) calls JAXBUnmarshallerImpl which calls UnmarshallerImpl (jboss-xml-binding.jar) which does the parsing of the XML.
> I do not see any call to UnmarshallerImpl.setSchemaValidation in this call graph. Should this be called to turn on to do Schema Validation ? If so how and where ?
> Is Schema Validation for Document/Literal something that JBOSSWS 1.0.2 supports ?
> How does one turn on XML Schema validation in JBOSSWS ?
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 9 months
[JBoss JIRA] Created: (JBWS-1402) Ejb3 JMSTransportSupport
by John Gilbert (JIRA)
Ejb3 JMSTransportSupport
------------------------
Key: JBWS-1402
URL: http://jira.jboss.com/jira/browse/JBWS-1402
Project: JBoss Web Services
Issue Type: Patch
Security Level: Public (Everyone can see)
Environment: I made these changes to work with JBossWS 1.0.3 and JBoss AS 4.0.4.
Reporter: John Gilbert
Allow the use of Ejb3 MDBs to support soap over jms. Note: This is a different solution then outlined in the referenced forum discussion.
Here is a sample Ejb3 MDB which is also annotated with JWS annotations:
@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue"),
@ActivationConfigProperty(propertyName = "destination", propertyValue = "queue/AuthorizationCallbackQueue"),
@ActivationConfigProperty(propertyName = "acknowledgeMode", propertyValue = "AUTO_ACKNOWLEDGE"),
@ActivationConfigProperty(propertyName = "subscriptionDurability", propertyValue = "Durable") })
@WebService(name = "AuthorizationCallbackService", serviceName = "AuthorizationCallbackService")
@SOAPBinding(style = Style.RPC, use = Use.LITERAL, parameterStyle = ParameterStyle.BARE)
@SOAPMessageHandlers( { @SOAPMessageHandler(className = "org.jboss.ws.wsse.WSSecurityHandlerInbound") })
@SecurityDomain("portal")
public class AuthorizationCallbackMDB extends JMSTransportSupport implements MessageListener {
@WebMethod
@Oneway
public void authorizationResponse(@WebParam(name = "paymentId") long paymentId, @WebParam(name = "status") boolean status) throws java.rmi.RemoteException {
...
}
}
The following changes where made to get this to work:
jbossws-core.jar -> org.jboss.ws.server.ServiceEndpointInfo constructor
} else if (udi.type == UnifiedDeploymentInfo.Type.JSR181_EJB3) {
String ejbName = sepMetaData.getLinkName();
UnifiedApplicationMetaData applMetaData = (UnifiedApplicationMetaData) udi.metaData;
UnifiedBeanMetaData beanMetaData = (UnifiedBeanMetaData) applMetaData
.getBeanByEjbName(ejbName);
if (beanMetaData instanceof UnifiedMessageDrivenMetaData) {
this.type = Type.MDB21;
} else {
this.type = Type.SLSB30;
}
}
jbossws-jboss-integration.jar -> org.jboss.ws.integration.jboss.DeployerInterceptorEJB3
protected UnifiedDeploymentInfo createUnifiedDeploymentInfo(DeploymentInfo di) throws Exception {
...
for (Object container : ejb3Module.getContainers().values()) {
if (container instanceof StatelessContainer) {
StatelessContainer slc = (StatelessContainer) container;
UnifiedBeanMetaData uslc = new UnifiedBeanMetaData();
uslc.setEjbName(slc.getEjbName());
uslc.setEjbClass(slc.getBeanClassName());
beans.add(uslc);
}
if (container instanceof MDB) {
MDB mdc = (MDB) container;
if (mdc.resolveAnnotation(WebService.class) != null) {
UnifiedBeanMetaData umdc = new UnifiedMessageDrivenMetaData();
umdc.setEjbName(mdc.getEjbName());
umdc.setEjbClass(mdc.getBeanClassName());
ActivationConfigPropertyMetaData p = (ActivationConfigPropertyMetaData) mdc
.getActivationConfigProperties().get("destination");
((UnifiedMessageDrivenMetaData) umdc)
.setDestinationJndiName(p.getValue());
beans.add(umdc);
}
}
}
...
}
protected boolean isWebserviceDeployment(DeploymentInfo di) {
...
for (Object manager : ejb3Module.getContainers().values()) {
if (manager instanceof StatelessContainer) {
StatelessContainer container = (StatelessContainer) manager;
if (container.resolveAnnotation(WebService.class) != null) {
isWebserviceDeployment = true;
break;
}
}
if (manager instanceof MDB) {
MDB container = (MDB) manager;
if (container.resolveAnnotation(WebService.class) != null) {
isWebserviceDeployment = true;
break;
}
}
}
...
}
The only thing I couldn't fix was the generated endpoint address in the wsdl. It still comes out like this
<soap:address location='http://localhost:8080/payment-authorizer-0/AuthorizationCallbackMDB'/>
instead of something like this
<soap:address location='jms://localhost/queue/AuthorizationCallbackQueue'/>
On a similar note I have created a straight forward jboss remoting JmsClientInvoker. It only works with Oneway messages, which is reasonable.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
16 years, 9 months