[jBPM] - Process variable and rule task
by Cristiano Nicolai
Cristiano Nicolai [http://community.jboss.org/people/cristiano.nicolai] created the discussion
"Process variable and rule task"
To view the discussion, visit: http://community.jboss.org/message/608017#608017
--------------------------------------------------------------
Hi all,
I'm writing a rule that analyze a variable in my process, and this variable is taken in consideration to fire a rule. So I did something very simple using the from conditional element in the left hand side.
rule "Test"
ruleflow-group "test"
when
$processInstance : WorkflowProcessInstance()
$str : String() from (String)$processInstance.getVariable("strValue");
then
System.out.println("str: " + $str);
end
My doubt is that when I have this variable "strValue" started as a parameter when I start the process everything works fine but when I have it initialized using a Script Task node before my Rule Task node, the rule isn't fired.
kcontext.setVariable("strValue", "test value");
I can check that the value is set if I use it in the right hand side (without from) or getting the variable value from the java code who started the process.
Any guess about this behavior?
#
Thanks!
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/608017#608017]
Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
13 years, 7 months
[jBPM] - jbpm 4.4 + Spring 3: can't deploy a jpdl
by Radu D.
Radu D. [http://community.jboss.org/people/rd210275] created the discussion
"jbpm 4.4 + Spring 3: can't deploy a jpdl"
To view the discussion, visit: http://community.jboss.org/message/607777#607777
--------------------------------------------------------------
I am getting the warning
"60421 [http-8443-1] WARN org.jbpm.pvm.internal.repository.DeployerManager - WARNING: no objects were deployed! Check if you have configured a correct deployer in your jbpm.cfg.xml file for the type of deployment you want to do." And I can't retrieve the process definition anymore.
The code is:
NewDeployment newDeployment = repositoryService.createDeployment();
newDeployment.addResourceFromFile(deploymentFile); // a jpdl.xml file
String id = newDeployment.deploy();
LOG.info("Deployed: '" + id + "'"); // gives the id in DB, somthing like '40001'
ProcessDefinitionQuery pdq = repositoryService.createProcessDefinitionQuery();
List<ProcessDefinition> processDefinitions = pdq.processDefinitionKey(id).list();
for (ProcessDefinition pd : processDefinitions) { // empty collection
LOG.info(pd.getId());
}
Where should I look for?
The jbpm.cfg.xml looks like:
<?xml version="1.0" encoding="UTF-8"?>
<jbpm-configuration xmlns=" http://jbpm.org/xsd/cfg http://jbpm.org/xsd/cfg">
<import resource="jbpm.jpdl.cfg.xml" />
<import resource="jbpm.identity.cfg.xml" />
<import resource="jbpm.jobexecutor.cfg.xml" />
<process-engine-context>
<repository-service />
<repository-cache />
<execution-service />
<history-service />
<management-service />
<identity-service />
<task-service />
<command-service name="newTxRequiredCommandService">
<retry-interceptor />
<environment-interceptor policy="requiresNew" />
<spring-transaction-interceptor />
</command-service>
<command-service name="txRequiredCommandService">
<retry-interceptor />
<environment-interceptor />
<spring-transaction-interceptor />
</command-service>
<object class="org.jbpm.pvm.internal.id.DatabaseDbidGenerator">
<field name="commandService">
<ref object="txRequiredCommandService" />
</field>
</object>
<object class="org.jbpm.pvm.internal.id.DatabaseIdComposer" init="eager">
</object>
<deployer-manager>
<jpdl-deployer />
</deployer-manager>
<!-- Added spring as read-context -->
<script-manager default-expression-language="juel" default-script-language="juel"
read-contexts="execution, environment, process-engine, spring" write-context="">
<script-language name="juel" factory="org.jbpm.pvm.internal.script.JuelScriptEngineFactory" />
</script-manager>
<authentication />
<id-generator />
<types resource="jbpm.variable.types.xml" />
<address-resolver />
</process-engine-context>
<transaction-context>
<repository-session />
<db-session />
<message-session />
<timer-session />
<history-session />
<transaction type="spring" />
<!-- Need to set explicitly that we don't want jbpm to create sessions -->
<hibernate-session current="true" close="false" />
</transaction-context>
</jbpm-configuration>
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/607777#607777]
Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
13 years, 8 months
[JBoss Web Services] - Re: NullPointerException in JBossXSEntityResolver.getXMLInputSource still happening in 5.1.0
by Mikheil Kapanadze
Mikheil Kapanadze [http://community.jboss.org/people/mkapanadze] created the discussion
"Re: NullPointerException in JBossXSEntityResolver.getXMLInputSource still happening in 5.1.0"
To view the discussion, visit: http://community.jboss.org/message/608002#608002
--------------------------------------------------------------
I had this error today, but on older JBoss (4.2.3). WSDL was a bit complex but not wrong (it was auto-generated from EJB, deployed on JBoss 5.1.0 - both wsimport and wsconsume were OK with it.
I'll describe how I have fixed it for myself. Maybe it will be helpful for anyone.
I had to create web service client and add to some application, deployed on 4.2.3. I've generated classes using wsimport and created the client. After that, I got the above mentioned error.
As everyone knows, when you generate JAX-WS classes, wsimport uses absolute path of the filename in the ***Service.java. It looks like this:
@WebServiceClient(name = "MyService", targetNamespace = " http://www.example.com/NS/my-NS http://www.example.com/NS/my-NS", wsdlLocation = "file:/D:/path/to/wsdl/Service.wsdl")
and the same path exists after few lines, in static initialization block.
When you deploy the application on the server, in most cases the pathname will be incorrect. To avoid this, I often place my .wsdl files in the package and create service class using MyService(URL wsdlLocation, QName serviceName) constructor but today it caused NPE for me.
I have tried to make above mentioned static initialization block and @WebServiceClient annotation little bit usable. Here are steps:
1. Choose name of your package where wsimport will place generated classes. Say, com.mikheil.demo.ws.client
2. Put your WSDL in classpath, inside the SAME package. Let's suppose it's name is MyService.wsdl
3. When executing wsimport, pass *-wsdllocation MyService.wsdl* to it
I use Maven and plugin parameter there is wsdlLocation
So, here is how my service looks like:
@WebServiceClient(name = "MyService", targetNamespace = " http://www.example.com/NS/my-NS http://www.example.com/NS/my-NS", wsdlLocation = "MyService.wsdl")
public class MyService
extends Service
{
private final static URL MYSERVICE_WSDL_LOCATION;
private final static Logger logger = Logger.getLogger(com.mikheil.demo.ws.client.MyService.class.getName());
static {
URL url = null;
try {
URL baseUrl;
baseUrl = com.mikheil.demo.ws.client.MyService.class.getResource(".");
url = new URL(baseUrl, "MyService.wsdl");
} catch (MalformedURLException e) {
logger.warning("Failed to create URL for the wsdl Location: 'MyService.wsdl', retrying as a local file");
logger.warning(e.getMessage());
}
URL MYSERVICE_WSDL_LOCATION; = url;
}
// Some constructors, etc
}
Obviously, now it's possible to create web service client using default constructor.
...And, NullPointerException disappeared too!
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/608002#608002]
Start a new discussion in JBoss Web Services at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
13 years, 8 months
[jBPM] - Generate reports problem with jbpm-console
by Serge Emmanuel Pagop
Serge Emmanuel Pagop [http://community.jboss.org/people/spagop] created the discussion
"Generate reports problem with jbpm-console"
To view the discussion, visit: http://community.jboss.org/message/587097#587097
--------------------------------------------------------------
I installed to the jbpm5 through the installer and try to play arround the evaluation example to create process instances with human-tasks. after all I wanted to generate report. After a Click on the "Report Templates" from "Reporting" Tab, I got this error, may be some one already solve that and want to share :-)
Messages
TRACE DEBUG INFO WARN ERROR FATAL OFF Clear
2011-02-13 12:38:07,708 [DEBUG] New subscription: appContext.model.listener -> org.jboss.bpm.console.client.process.DefinitionListView$5@10e
2011-02-13 12:38:08,260 [DEBUG] GET: http://localhost:8080/gwt-console-server/rs/process/definitions http://localhost:8080/gwt-console-server/rs/process/definitions
2011-02-13 12:38:08,280 [INFO ] Loaded 1 process definitions in 5 ms
2011-02-13 12:38:27,228 [DEBUG] ToolID: Report_Templates.5
2011-02-13 12:38:27,838 [DEBUG] GET: http://localhost:8080/gwt-console-server/rs/report/config http://localhost:8080/gwt-console-server/rs/report/config
2011-02-13 12:38:27,856 [ERROR] <ul><li>URL: ' http://localhost:8080/gwt-console-server/rs/report/config http://localhost:8080/gwt-console-server/rs/report/config'
<li>Action: 'org.jboss.bpm.console.client.report.UpdateReportConfigAction'
<li>Exception: 'class com.google.gwt.http.client.RequestException'</ul>
HTTP 500: <html><head><title>JBoss Web/2.1.3.GA - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 500 - </h1><HR size="1" noshade="noshade"><p><b>type</b> Exception report</p><p><b>message</b> <u></u></p><p><b>description</b> <u>The server encountered an internal error () that prevented it from fulfilling this request.</u></p><p><b>exception</b> <pre>org.jboss.resteasy.spi.UnhandledException: java.lang.IllegalStateException: Report server not initialized. Please check the server logs for further details.
org.jboss.resteasy.core.SynchronousDispatcher.handleApplicationException(SynchronousDispatcher.java:319)
org.jboss.resteasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.java:230)
org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException(SynchronousDispatcher.java:206)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:360)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
</pre></p><p><b>root cause</b> <pre>java.lang.IllegalStateException: Report server not initialized. Please check the server logs for further details.
org.jboss.bpm.report.ReportFacade.assertBirtAvailability(ReportFacade.java:195)
org.jboss.bpm.report.ReportFacade.getReportConfig(ReportFacade.java:328)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:117)
org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:260)
org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:232)
org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:166)
org.jboss.resteasy.core.DispatcherUtilities.getJaxrsResponse(DispatcherUtilities.java:142)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
</pre></p><p><b>note</b> <u>The full stack trace of the root cause is available in the JBoss Web/2.1.3.GA logs.</u></p><HR size="1" noshade="noshade"><h3>JBoss Web/2.1.3.GA</h3></body></html>
com.google.gwt.http.client.RequestException:
HTTP 500:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.jboss.resteasy.spi.UnhandledException: java.lang.IllegalStateException: Report server not initialized. Please check the server logs for further details.
org.jboss.resteasy.core.SynchronousDispatcher.handleApplicationException(SynchronousDispatcher.java:319)
org.jboss.resteasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.java:230)
org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException(SynchronousDispatcher.java:206)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:360)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
root cause
java.lang.IllegalStateException: Report server not initialized. Please check the server logs for further details.
org.jboss.bpm.report.ReportFacade.assertBirtAvailability(ReportFacade.java:195)
org.jboss.bpm.report.ReportFacade.getReportConfig(ReportFacade.java:328)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:117)
org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:260)
org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:232)
org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:166)
org.jboss.resteasy.core.DispatcherUtilities.getJaxrsResponse(DispatcherUtilities.java:142)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
note The full stack trace of the root cause is available in the JBoss Web/2.1.3.GA logs.
JBoss Web/2.1.3.GA
at Unknown.zP(Unknown source:0)
at Unknown.szc(Unknown source:0)
at Unknown.KO(Unknown source:0)
at Unknown.pP(Unknown source:0)
at Unknown.anonymous(Unknown source:0)
at Unknown.HA(Unknown source:0)
at Unknown.anonymous(Unknown source:0)
at Unknown.anonymous(Unknown source:0)
Error
* URL: ' http://localhost:8080/gwt-console-server/rs/report/config http://localhost:8080/gwt-console-server/rs/report/config'
* Action: 'org.jboss.bpm.console.client.report.UpdateReportConfigAction'
* Exception: 'class com.google.gwt.http.client.RequestException'
HTTP 500:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.jboss.resteasy.spi.UnhandledException: java.lang.IllegalStateException: Report server not initialized. Please check the server logs for further details.
org.jboss.resteasy.core.SynchronousDispatcher.handleApplicationException(SynchronousDispatcher.java:319)
org.jboss.resteasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.java:230)
org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException(SynchronousDispatcher.java:206)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:360)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
root cause
java.lang.IllegalStateException: Report server not initialized. Please check the server logs for further details.
org.jboss.bpm.report.ReportFacade.assertBirtAvailability(ReportFacade.java:195)
org.jboss.bpm.report.ReportFacade.getReportConfig(ReportFacade.java:328)
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:597)
org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:117)
org.jboss.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:260)
org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:232)
org.jboss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:166)
org.jboss.resteasy.core.DispatcherUtilities.getJaxrsResponse(DispatcherUtilities.java:142)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:356)
org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:173)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:93)
org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:68)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:59)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
note The full stack trace of the root cause is available in the JBoss Web/2.1.3.GA logs.
JBoss Web/2.1.3.GA
OK
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/587097#587097]
Start a new discussion in jBPM at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&cont...]
13 years, 8 months
[JBoss Web Services] - JBossWS - AS 7 FAQ
by Alessio Soldano
Alessio Soldano [http://community.jboss.org/people/asoldano] modified the document:
"JBossWS - AS 7 FAQ"
To view the document, visit: http://community.jboss.org/docs/DOC-16722
--------------------------------------------------------------
h1. JBossWS - AS 7 FAQ
This page is about the JBossWS integration with JBoss Application Server 7, which comes with a completely new architecture based on modules.
*Since 4.0.0*
h4. Which modules belong to JBossWS? Am I supposed to modify them?
The org.jboss.as.webservices.* and org.jboss.ws.* modules belongs to the JBossWS - AS7 integration. Users should not need to change anything in them.
h4. I'm getting a ClassNotFoundException with an application that used to work on AS6, what's happening?
On JBoss AS7 the user deployment classloader does not have any visibility over JBoss internals; so for instance you can't directly use JBossWS +implementation+ classes unless you explicitly set a dependency to the corresponding module.
h4. How do I add dependencies to modules on my deployments?
Dependencies are configured in the deployment MANIFEST.MF file:
Manifest-Version: 1.0
Dependencies: org.jboss.ws.cxf.jbossws-cxf-client services export, foo.bar
Here above +org.jboss.ws.cxf.jbossws-cxf-client+ and +foo.bar+ are the module you want to set dependencies to; +services+ tells the modules framework that you want to also import +META-INF/services/..+ declarations from the dependency, while +export+ exports the classes in the module so that you can actually use them in your code.
h4. How can I use JAXB classes?
In order for successfully use JAXB contexts, etc. in your client or endpoint running in-container, you need to properly setup a JAXB implementation; that is performed setting the following dependency:
Dependencies: com.sun.xml.bind services export
h4. How can I use JBossWS APIs?
The JBossWS APIs are always available by default whenever the webservices subsystem is available on AS7. So you just use them.
h4. How can I use Apache CXF APIs?
In order for using Apache CXF APIs you need to add a dependency to the org.apache.cxf module:
Dependencies: org.apache.cxf services
...however, please note that would not come with any JBossWS-CXF customizations nor additional extensions. See next FAQ.
h4. Is there an aggregation client side module with all WS dependencies?
Yes. Whenever you simply want to use all the JBossWS feature/functionalities, you can set a dependency to the convenient client module. For the JBossWS-CXF stack that's:
Dependencies: org.jboss.ws.cxf.jbossws-cxf-client services export
Please note the +services+ option above: that's strictly required in order for you to get the JBossWS-CXF version of classes that are retrieved using the Service API, the Bus for instance. Issues because of misconfiguration here can be quite hard to track down, because the Apache CXF behaviour would be sensibly different.
h4. Do I need to the +services+ option when declaring dependencies on ws modules?
Yes, you almost always need it when declaring dependencies on +org.jboss.ws.cxf.jbossws-cxf-client+ and +org.apache.cxf modules+. The reason for this is in it affecting the loading of classes through the Service API, which is what is used to wire most of the JBossWS components as well as all Apache CXF Bus extensions.
h4. What is the org.jboss.ws.jaxws-client module for?
That is the generic JAXWS client module that is internally loaded when the first call to the configured JAXWS Provider is performed. Depending on the configured ws stack, that pulls in the required modules for basic jaxws functionalities.
h4. How do I use Spring with JBossWS-CXF?
The JBossWS-CXF modules have optional dependencies to the +org.springframework.spring+ module. So either create that manually in the application server or use the JBossWS-CXF installation scripts for doing that.
h4. What SAAJ impl do I get doing MessageFactory.getFactory()?
...
h4. My annotations are being ignored (and I get no special warning about that)!
When using annotations on your endpoints / handlers such as the Apache CXF ones (@InInterceptor, @GZIP, ...), or JBossWS Native ones (@EndpointConfig, @Documentation, ...) remember to add the proper module dependency in your manifest. Otherwise your annotations are not picked up and added to the annotation index by JBoss AS7, resulting in them being completely ignored (even silently in many cases -this needs to be fixed-).
--------------------------------------------------------------
Comment by going to Community
[http://community.jboss.org/docs/DOC-16722]
Create a new document in JBoss Web Services at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=102&co...]
13 years, 8 months
[JBoss Web Services] - JBossWS - AS 7 FAQ
by Alessio Soldano
Alessio Soldano [http://community.jboss.org/people/asoldano] modified the document:
"JBossWS - AS 7 FAQ"
To view the document, visit: http://community.jboss.org/docs/DOC-16722
--------------------------------------------------------------
h1. JBossWS - AS 7 FAQ
This page is about the JBossWS integration with JBoss Application Server 7, which comes with a completely new architecture based on modules.
*Since 4.0.0*
h4. Which modules belong to JBossWS? Am I supposed to modify them?
The org.jboss.as.webservices.* and org.jboss.ws.* modules belongs to the JBossWS - AS7 integration. Users should not need to change anything in them.
h4. I'm getting a ClassNotFoundException with an application that used to work on AS6, what's happening?
On JBoss AS7 the user deployment classloader does not have any visibility over JBoss internals; so for instance you can't directly use JBossWS +implementation+ classes unless you explicitly set a dependency to the corresponding module.
h4. How do I add dependencies to modules on my deployments?
Dependencies are configured in the deployment MANIFEST.MF file:
Manifest-Version: 1.0
Dependencies: org.jboss.ws.cxf.jbossws-cxf-client services export, foo.bar
Here above +org.jboss.ws.cxf.jbossws-cxf-client+ and +foo.bar+ are the module you want to set dependencies to; +services+ tells the modules framework that you want to also import +META-INF/services/..+ declarations from the dependency, while +export+ exports the classes in the module so that you can actually use them in your code.
h4. How can I use JAXB classes?
In order for successfully use JAXB contexts, etc. in your client or endpoint running in-container, you need to properly setup a JAXB implementation; that is performed setting the following dependency:
Dependencies: com.sun.xml.bind services export
h4. How can I use JBossWS APIs?
The JBossWS APIs are always available by default whenever the webservices subsystem is available on AS7. So you just use them.
h4. How can I use Apache CXF APIs?
In order for using Apache CXF APIs you need to add a dependency to the org.apache.cxf module:
Dependencies: org.apache.cxf
...however, please note that would not come with any JBossWS-CXF customizations nor additional extensions. See next FAQ.
h4. Is there an aggregation client side module with all WS dependencies?
Yes. Whenever you simply want to use all the JBossWS feature/functionalities, you can set a dependency to the convenient client module. For the JBossWS-CXF stack that's:
Dependencies: org.jboss.ws.cxf.jbossws-cxf-client services export
Please note the +services+ option above: that's strictly required in order for you to get the JBossWS-CXF version of classes that are retrieved using the Service API, the Bus for instance. Issues due because of misconfiguration here can be quite hard to track down, because the Apache CXF behaviour would be sensibly different.
h4. What is the org.jboss.ws.jaxws-client module for?
That is the generic JAXWS client module that is internally loaded when the first call to the configured JAXWS Provider is performed. Depending on the configured ws stack, that pulls in the required modules for basic jaxws functionalities.
h4. How do I use Spring with JBossWS-CXF?
The JBossWS-CXF modules have optional dependencies to the +org.springframework.spring+ module. So either create that manually in the application server or use the JBossWS-CXF installation scripts for doing that.
h4. What SAAJ impl do I get doing MessageFactory.getFactory()?
...
h4. My annotations are being ignored (and I get no special warning about that)!
When using annotations on your endpoints / handlers such as the Apache CXF ones (@InInterceptor, @GZIP, ...), or JBossWS Native ones (@EndpointConfig, @Documentation, ...) remember to add the proper module dependency in your manifest. Otherwise your annotations are not picked up and added to the annotation index by JBoss AS7, resulting in them being completely ignored (even silently in many cases -this needs to be fixed-).
--------------------------------------------------------------
Comment by going to Community
[http://community.jboss.org/docs/DOC-16722]
Create a new document in JBoss Web Services at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=102&co...]
13 years, 8 months