[Beginner's Corner] New message: "Re: How do I enable pass-by-reference for EJB3 in JBoss AS container?"
by Jerry Simone
User development,
A new message was posted in the thread "How do I enable pass-by-reference for EJB3 in JBoss AS container?":
http://community.jboss.org/message/524219#524219
Author : Jerry Simone
Profile : http://community.jboss.org/people/jlsimone
Message:
--------------------------------------------------------------
Here is some new/additional information and a more concrete example.
I wrote a small, simple-minded application to test solutions to these types of problems. Please excuse the silly names. I have a stateful EJB named HatBean. The HatBean has a getHatCleaner()method that it uses to get a reference to (the remote interface for) the stateful HatCleanerBean. The last line of the stack trace below shows the call to the HatBean method getHatCleaner(). Once the HatBean has the remote interface for the HatCleanerBean, the HatBean uses that remote interface to initialize the state of the HatCleanerBean by calling the initialize() method on the HatCleanerBean, passing it objects that will be retained in the state of the HatCleanerBean. (This initialize() method is my own hack that I use, having only recently learned about the @Init annotation for the EJB3 beans.) Anyway, this stack trace seems to indicate that the container is serializing the objects that are being passed to the HatCleanerBean. One of the objects passed to the HatCleanerBean.initialize() method is the HatCleanerProcessor. I deliberately did not make the HatCleanerProcessor serializable because I want the HatCleanerProcessor to be passed by reference to the HatCleanerBean, bypassing serialization for calls within the same JVM. I see interesting things in the stack trace like MarshalledObjectForLocalCalls which makes me think that the container recognizes the local nature of the call. But further up in the stack trace is a reference to a StatefulRemoteInvocation which suggests remote rather than local interactions. The question remains, that is, is there a way to get the JBoss 5.1 EJB container to quit trying to serialize objects across a local call to an EJB?
Caused by: java.io.NotSerializableException: com.swa.hat.server.domain.HatCleanerProcessor
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1156)
at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1338)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1146)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326)
at java.rmi.MarshalledObject.<init>(MarshalledObject.java:101)
at org.jboss.aop.joinpoint.MethodInvocation.writeExternal(MethodInvocation.java:373)
at org.jboss.ejb3.proxy.impl.invocation.StatefulRemoteInvocation.writeExternal(StatefulRemoteInvocation.java:78)
at org.jboss.serial.persister.ExternalizePersister.writeData(ExternalizePersister.java:58)
at org.jboss.serial.objectmetamodel.ObjectDescriptorFactory.describeObject(ObjectDescriptorFactory.java:276)
at org.jboss.serial.objectmetamodel.DataContainer$DataContainerOutput.writeObject(DataContainer.java:390)
at org.jboss.serial.io.MarshalledObjectForLocalCalls.<init>(MarshalledObjectForLocalCalls.java:38)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invokeLocal(IsLocalInterceptor.java:79)
at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:72)
at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
at org.jboss.aspects.remoting.PojiProxy.invoke(PojiProxy.java:62)
at $Proxy268.invoke(Unknown Source)
at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:207)
at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:164)
at $Proxy255.initialize(Unknown Source)
at com.swa.hat.ejb.HatBean.getHatCleaner(HatBean.java:45)
--------------------------------------------------------------
To reply to this message visit the message page: http://community.jboss.org/message/524219#524219
16 years, 5 months
[jBPM] New message: "Re: Upgrade from JBPM3 to JBPM4 woes"
by Flavio N.
User development,
A new message was posted in the thread "Upgrade from JBPM3 to JBPM4 woes":
http://community.jboss.org/message/524214#524214
Author : Flavio N.
Profile : http://community.jboss.org/people/VegaMilano
Message:
--------------------------------------------------------------
I intervene in this discussion, because I am facing the opposite problems.
We was evaluating JBPM4 but we are not able to find useful example or info:
* most examples refers to JBPM3 syntax
* Exception handling present in JBPM3 are disappeared in JBPM4 and we need them using third-party Java classes
Actually, we are not able to implement even a simple "start - execute java - catch exception - end" process; we also open a thread:
http://community.jboss.org/thread/146114
but we get answer only from one user and no code sample to prove something is possible to solve the problem.
We are thinking to downgrade to JBPM3 or probably evaluate another product, if JBPM is going to do not handle such simple scenarios like this.
We suspected we are facing problems because we are newbies on JBPM, but the lack of answers of our questions are starting to reveal deficiency in the JBPM.
I hope someone here is able to give us answers to our doubts. I am stargin to ask to myself what do you call or manage inside JBPM tasks...
A desperate JBPM user
--------------------------------------------------------------
To reply to this message visit the message page: http://community.jboss.org/message/524214#524214
16 years, 5 months
[JBoss Tools] Document updated/added: "JBosstoolsVisualEditorFAQ"
by Maxim Areshkau
User development,
The document "JBosstoolsVisualEditorFAQ", was updated Feb 4, 2010
by Maxim Areshkau.
To view the document, visit:
http://community.jboss.org/docs/DOC-10862#cf
Document:
--------------------------------------------------------------
*Q : Visual Editor does not start under Linux*
*A* : Linux users may need to do the following to get the visual editor to work correctly on their machines.
* The Visual Page Editor (before JBoss Tools 3.1.0.M4) requires the library libstdc++.so.5. This library is contained in the compat-libstdc++-33.i386 package.
** To install this package on Fedora Core or Red Hat Enterprise Linux run the following command:
** On any other rpm based distributions download libstdc++.so.5 and run the following command:
** On Debian and Debian based distributions (e.g. Ubuntu) run the following command:
* In case you have the library installed and you still have issue with starting the visual page editor then close all browser views/editors and leave one visual page editor open and restart eclipse. This should force a load of the right XULRunner viewer.
*Q: Visual Editor doesn't start at any platform and shows message* 'The VPE editor can't be run because your system environment needs to be changed slightly'
* check is you version of studia/tools is compatible with you version of eclipse, see compatible matrix http://community.jboss.org/docs/DOC-14297
*Q : Visual Editor starts OK, but next message dialog appears:*
http://community.jboss.org/servlet/JiveServlet/showImage/102-10862-31-195...
*A* : Some functionality of Visual Editor may not work if a project doesn't have org.jboss.tools.jsf.jsfnature or org.jboss.tools.jst.web.kb.kbnature in .project configuration. To fix this problem and turn off the message box execute next steps:
* Right mouse button click on a project in Package Explorer.
* Select +Configure -> Add JSF Capabilities+ from the context menu.
* Configure your project using +Add JSF Capabilities+ wizard and press Finish.
*P. S.* If you are shure that your project does not need JSF capabilities, just disable this message box by checking "+Do not show this dialog again!+" checkbox.
*Q :* Visual Part doesn't start and "XPCOM error -2147467259" are showed
*A :* Something bad happened with build in xulrunner. To check it you should:
* Go to Eclipse -> Help -> About -> Installation Details... -> Configuration
* find org.eclipse.swt.browser.XULRunnerPath and open this path in terminal
* try xulrunner.exe -version or ./xulrunner -version and it should show what is need for XR to work
--------------------------------------------------------------
16 years, 5 months