[jBPM] New message: "Re: Installing jBPM 4.3 in tomcat 5.5"
by Deepak Sharma
User development,
A new message was posted in the thread "Installing jBPM 4.3 in tomcat 5.5":
http://community.jboss.org/message/524054#524054
Author : Deepak Sharma
Profile : http://community.jboss.org/people/deepak_sharma_25
Message:
--------------------------------------------------------------
Hey i tried that first, but doesn't worked.
In Install/build.xml file i made the following changes:
*<property name="tomcat.version" value="5.5.28" />
<property name="tomcat.parent.dir" value="${jbpm.home}" />
<property name="tomcat.home" value="C:\apache-tomcat-5.5.28" />*
when i run this ant script, i got the following error:
*C:\jbpm-4.3\install>ant install.jbpm.into.tomcat
Buildfile: build.xml
[echo] database......... oracle
[echo] tx............... standalone
[echo] mail.smtp.host... localhost*
*create.cfg:
[copy] Copying 1 file to C:\jbpm-4.3\install\generated\cfg
[copy] Copying 1 file to C:\jbpm-4.3\install\generated\cfg
[copy] Copying 1 file to C:\jbpm-4.3\install\generated\cfg
[copy] Copying 1 file to C:\jbpm-4.3\install\generated\cfg
[echo] database......... oracle
[echo] tx............... standalone
[echo] mail.smtp.host... localhost*
*internal.copy.spring.applicationContext:*
*install.jbpm.into.tomcat:
[jar] Building jar: C:\apache-tomcat-5.5.28\lib\jbpm.cfg.jar*
*BUILD FAILED
C:\jbpm-4.3\install\build.xml:471: Problem creating jar: C:\apache-tomcat-5.5.2
\lib\jbpm.cfg.jar (The system cannot find the path specified) (and the archive
s probably corrupt but I could not delete it)*
What i understood from this error is that, the *directory structure* of *tomcat 5.5.28* is *different* from *tomcat 6.0* directory structure.
So, what should i do to install it successfully?
Thanks in advance
Deepak
--------------------------------------------------------------
To reply to this message visit the message page: http://community.jboss.org/message/524054#524054
16 years, 2 months
[EJB 3.0 Development] New message: "Re: Externalizing Scope: Resolving EJB References and Endpoints"
by Andrew Rubinger
User development,
A new message was posted in the thread "Externalizing Scope: Resolving EJB References and Endpoints":
http://community.jboss.org/message/524041#524041
Author : Andrew Rubinger
Profile : http://community.jboss.org/people/ALRubinger
Message:
--------------------------------------------------------------
Some notes from our discussion today:
This cannot work:
//API:
/**
* All EJB3.x SFSBs will have this bound into JNDI
* at default: [appName]/moduleName/beanName/home
*/
interface StatefulSessionHome
{
void remove(StatefulSessionHandle)
boolean exists(StatefulSessionHandle);
<T> T create(T type) throws IllegalArgumentException;
}
//API:
/**
* All SFSB proxies may be cast to this type
* by the client
*/
interface StatefulSessionHandle
{
// Marker only from the client view
}
//SPI:
/**
* This is how the container knows the ID of the session to remove;
* all SFSB proxies will implement this method
*/
interface StatefulSessionHandleProvider extends StatefulSessionHandle
{
Object getId();
}
// Usage:
StatefulSessionHome home = (StatefulSessionHome)context.lookup("beanName/home");
MyBusiness bean = home.create(MyBusiness.class);
home.remove((StatefulSessionHandle)bean);
// Traditional JNDI lookup removal:
MyBusiness bean = context.lookup("beanName/remote");
home.remove((StatefulSessionHandle)bean);
Again, this is because we can't define *any* methods upon a proxy which is for business interfaces; we could introduce conflicts in method names. In the case above, no user code could have "getId();" for example.
An alternative way is to do something like have a Home per EJB Container. Then the home knows how to go into the internals of the proxy handler to extract the ID. Jaikiran wrote up a nice example:
/***************** client (weld-int) *********************/
// user looks up or injects a SFSB (as usual)
UserSFSBInterface proxy = ...//get it as usual
// now get a StatefulSessionHandleProvider (this needs discussion, but let's say it's available in JNDI for each SFSB)
StatefulSessionHandleProvider handleProvider = ctx.lookup("beanName/handleprovider");
StatefulSessionHandle handle = handleProvider.getHandle(proxy);
// do some stuff
handle.destroy();
/***************** SPI*********************/
StatefulSessionHandleProvider
{
StatefulSessionHandle getHandle(Object proxy);
}
StatefulSessionHandle
{
destroy();
}
/***************** SPI implementation (for nointerface view) *********************/
// Individual handle provider impl
JavassistProxyBasedHandleProvider implements StatefulSessionHandleProvider
{
StatefulSessionHandle getHandle(Object proxy)
{
// do some checks on proxy
// and return a handle
new JavassistBasedSFSBHandle(proxy)
}
}
// JavassistBased handle for nointerface view
JavassistBasedSFSBHandle implements StatefulSessionHandle
{
Serializable sessionId;
JavassistBasedSFSBHandle(Object proxy)
{
// this knows the magic to get the session id from proxy
this.sessionId = doSomeMagicOnProxy();
}
destroy()
{
// destroy the session using hte session id
container.destroy(this.sessionId);
}
}
Too bad here we'd need a Home handle (HandleProvider in the example above) per container type.
S,
ALR
--------------------------------------------------------------
To reply to this message visit the message page: http://community.jboss.org/message/524041#524041
16 years, 2 months
[jBPM] New message: "Re: Upgrade from JBPM3 to JBPM4 woes"
by Ronald van Kuijk
User development,
A new message was posted in the thread "Upgrade from JBPM3 to JBPM4 woes":
http://community.jboss.org/message/524033#524033
Author : Ronald van Kuijk
Profile : http://community.jboss.org/people/kukeltje
Message:
--------------------------------------------------------------
Nick,
> Not sure how we sort that atm for v4.
Your example should still be possible. use e.g. the getActiveActivities on the execution service to get 'nodenames'. Getting the transition of all kinds of 'nodes' is going to be an addition in 4.4. afaik.
> v3 was much more "hackable",
> and I mean that in a good way.
4 stil is, You can often cast to *Impl classes and do more. The major difference is that there is an official 'stable' public api and you should use services to interact with the engine, not the model itself
So e.g.
processInstance.signal()
becomes
executionService.signal(processInstance);
> The model was pretty small and coherent:
Sure? Others think differently... I agree that once you were into it it was usable. But I've seen many do it wrongly.
> the only thing that didn't make a lot of sense was why you have Node and State.
This one is clear... Node had no default behaviour... just like custom in jBPM 4. State was just a state, like in jBPM 4
> Should be just State is a non-transient and Node is a transient state. IOW a boolean would have worked, my $0.02.
Yes but that was because you could add 'custom behaviour' to state to. Should not have been so, then the difference would have been much more clear.
> Spring
> integration: What worked well with us was making various adaptors for
> Spring DI into a process defintion where JbpmTemplate was less than
> perfect.
>
Anything less then perfect (ok, exaggerated a little) should not be used or fixed. Nobody ever did fix the template.... why? Not used a lot? Scared? .... If I may ask why didn't you?
Cheers,
Ronald
--------------------------------------------------------------
To reply to this message visit the message page: http://community.jboss.org/message/524033#524033
16 years, 2 months