[Design of POJO Server] - Relative order of deployers to other deployers
by scott.stark@jboss.org
A common usecase is that a given deployer want to be relative to another deployer as it operates on the the metadata going into or coming out of the other deployer. To do this in a deployers getRelativeOrder method requires stepping outside of the deployer spis as the MainDeployer has no registry of deployers by name, and we don't have a notion of specifying that a deployer's relativeOrder is relative to another deployer.
One way would be to expand the OrderedDeployer interface:
| public interface OrderedDeployer
| {
| /** The unique name of the deployer */
| public String getName();
| /** The name of the deployer this deployer is relative to. A null value means the
| relativeOrder is an global value. Otherwise, relativeOrder is translated into a global
| order by looking up the relativeOrder of the indicated deployer.
| */
| public String getRelativeToName();
|
| /**
| * Get the relative order
| *
| * @return the relative order
| */
| int getRelativeOrder();
| /**
| * Set the deployer relative order.
| * @param order - the order of the deployer in a deployer chain.
| */
| public void setRelativeOrder(int order);
| ...
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3982763#3982763
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3982763
18 years, 2 months
[Deployers on JBoss (Deployers/JBoss)] - Re: Dynamically reordering of deployers
by scott.stark@jboss.org
In testing out the change where the JBossWebAppParsingDeployer orders itself relative to the WebAppParsingDeployer, I see that the jbossws layer is installer a KernelLocator:
| 11:04:13,653 INFO [ServiceEndpointManager] WebServices: jbossws-2.0.0.CR1 (date=200610271913)
| 11:04:13,698 ERROR [BeanMetaDataDeployer] Error during deployment: KernelLocatororg.jboss.deployers.spi.DeploymentException: Error deploying: KernelLocator
| at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49)
| at org.jboss.deployers.plugins.deployers.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:71)
| at org.jboss.deployers.plugins.deployers.kernel.BeanMetaDataDeployer.deploy(BeanMetaDataDeployer.java:42)
| at org.jboss.deployers.plugins.deployers.helpers.AbstractSimpleRealDeployer.deploy(AbstractSimpleRealDeployer.java:53)
| at org.jboss.deployers.plugins.deployer.AbstractSimpleDeployer.commitDeploy(AbstractSimpleDeployer.java:52)
| at org.jboss.deployers.plugins.deployer.DeployerWrapper.commitDeploy(DeployerWrapper.java:145)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.commitDeploy(MainDeployerImpl.java:440)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.commitDeploy(MainDeployerImpl.java:451)
| at org.jboss.deployers.plugins.deployment.MainDeployerImpl.process(MainDeployerImpl.java:381)
| at org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileServiceBootstrap.java:366)
| at org.jboss.system.server.profileservice.ProfileServiceBootstrap.bootstrap(ProfileServiceBootstrap.java:246)
| at org.jboss.kernel.plugins.bootstrap.AbstractBootstrap.run(AbstractBootstrap.java:89)
| at org.jboss.system.server.profileservice.ServerImpl.doStart(ServerImpl.java:401)
| at org.jboss.system.server.profileservice.ServerImpl.start(ServerImpl.java:340)
| at org.jboss.Main.boot(Main.java:210)
| at org.jboss.Main$1.run(Main.java:508)
| at java.lang.Thread.run()V(Unknown Source)
| Caused by: java.lang.IllegalStateException: KernelLocator is already installed.
| at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:249)
|
|
As a general rule we need to be scoping the bean names to the context adding the beans as we should not have beans that are implementation details of a context clashing with the bean names from other contexts.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3982757#3982757
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3982757
18 years, 2 months
[Design of JBoss jBPM] - a jms message sending node type
by tom.baeyens@jboss.com
Here's a discussion that started as an email thread and that i think might be interesting enough for the general public :-)
| Tom Baeyens wrote:
|
| for the email node, this also took a long time till we found a proper template language.
|
| for the JMS node, we can write it if we limit ourselves to e.g. Map based messages and have a configuration like this.
|
| <message name="message node" destination="">
| <properties>
| <property expression="#{a.jsf.like.expression}" />
| <property expression="#{a.jsf.like.expression}" />
| <property expression="#{a.jsf.like.expression}" />
| </properties>
| <entry key="a fixed value">
| <value expression="#{a.jsf.like.expression}" />
| <value expression="#{a.jsf.like.expression}" />
| <value expression="#{a.jsf.like.expression}" />
| </entry>
| </message>
|
| we would have to add destination configurations that map destination names to actual JNDI queue names for that to work generic enough.
|
| i'm in doubt about the actual value we would create with this kind of effort. because this is of course a very limited usage of the JMS API's. so people are definitely going to want things that are outside the scope of these configuration options. also for processing the message, you need to write java code anyway. so the user of this message node would already have to have knowledge of how to write an MDB. that is why i am still reluctant to put that kind of effort into developing this.
|
| regards, tom.
|
|
| | -----Original Message-----
| | From: Jeff Delong
| | Sent: donderdag 2 november 2006 17:54
| | To: Tom Baeyens
| | Subject: RE: jBpm Requirements
| |
| | Ok, you confirmed what I understood from looking at the code.
| | JMSMessageService is NOT a general purpose messaging sending
| | component, rather it's purpose is to support asynchronous
| | continuations via JMS.
| |
| | Back to the customer requirement.
| |
| | "Message delivery via JMS in support of asynchronous task
| | processing occurring in an MDB"
| |
| | Ok, this statement is not very precise, but generally what
| | customers want to be able to send a message to another
| | component (e.g., MDB), that does some processing, and then
| | returns a response message to the process to tell it to move on.
| |
| | This requires a JMS Node and an MDB to receive responses. The
| | CommandListenerBean should satisfy the requirements for the
| | MDB, which leaves the issue of the JMS Node. I see this as
| | similar to the Email Node. It has similar requirements - you
| | have to configure it to provide a destination (queueName) and
| | a message. How the message is constructed should be flexible,
| | allowing any object or string to be the message, or allowing
| | the construction of a message from a list of jBPM context
| | variables. The specification of a correlationId should also
| | be possible, for example a tokenId. And all of this node
| | configuration should be exposed via the GPD.
| |
| | For today's call we can ignore this, but sooner or later this
| | type of functionality needs to be provided by jBPM.
| |
| | Jeff
| |
| | Jeff DeLong
| |
| | -----Original Message-----
| | From: Tom Baeyens
| | Sent: Thursday, November 02, 2006 1:38 AM
| | To: Jeff Delong
| | Subject: RE: jBpm Requirements
| |
| | for async continuations, jbpm knows what message to send to
| | the job executor.
| |
| | but if you put a send on a node, what message should be sent
| | ? whereto ? so i don't see yet how we could implement a
| | configurable node type for send message. also, the POJO
| | message service doesn't support multiple destinations yet.
| | should not be hard, but it could be an effort to take into
| | account when implementing one reusable msg-node.
| |
| | but the biggest problem is the message. how will such a
| | msg-node compose the message ? this should be done with an
| | API that is usable for both the JMS and POJO implementations
| | of the message service.
| |
| | regards, tom.
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3982755#3982755
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3982755
18 years, 2 months