[Security & JAAS/JBoss] - Custum LoginModule calling EJB in non-default security domai
by camueller
I'm using a custom login module which in turn uses an EJB to verify username/password. However, this EJB is part of a security domain, since it also provides methods relying on an authenticated principal.
Calls from an standalone Java application to various EJBs being part of the security domain are authenticated and authorized properly. From this I would conclude, that the login module is allowed to call methods of an EJB belonging to a non-default security domain. Occasionally (5 out of 80.000 calls) it happens, that JBoss realizes that the EJB belongs to a security domain and therefore tries to authenticate it using a login module, calling the EJB again, intercepted again ... . This recursion continues until a stack overflow occurs. From this behaviour I would conclude that it is not possible to call an EJB being part of a non-default security domain from a login module.
One of the behaviours must be wrong since it is inconsistent, but which one?
Is there a parameter I may/need to set in order to allow login module to call EJBs even if they are part of a non-default security domain?
In the Documentation/Wiki I read that the security domain can only be defined on JAR level. Therefore I cannot exclude those methods from the security domain used by the login module. Splitting the JAR and/or EJB is also not an option for me.
BTW: I'm using JBoss 4.0.4GA.
Axel
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3988402#3988402
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3988402
19Â years, 5Â months
[JBoss Seam] - Re: Some philosophy on the context name and access to Java B
by toni
Let me give you a short example to put the above said into a meanigfull context:
Lets says I have a database table, which stores customers all of which I would like to list row by row in a JSF table, which is contained inside a single JSP page. Each row also contains action links which represent actions that can be performed on a customer, like edit, delelete, display and "add another address".
For the JSP page I only need a reference to a DataModel.
The reference to the instance of the DataModel should be obtained from a "context variable", which references an "instance" of a class, which implements DataModel and is kept in one of the 5 seam contexts.
If I name the jsp page "displayCustomers.jsp" and call it via a GET request, then I run into the fact, that the context variable is not accessible, because no seam component get's referenced in a MVC pull fashion from the page.
That's what I meant by saying ".jsp pages, which do not contain any value or method binding".
Because no calls to a seam component have been made from the jsp page, the no context variable for the DataModel has not been set.
I could use a Page Action, to achievie this so that it calls some method on a seam component that sets the context variable and loads the clients from the database before the .jsp file gets rendered like this:
@DataModel @Out
@Factory("loadClientsFromDatabase")
List clients;
But I find that cumbersome, because I have so many pages which list entities the same fashion.
And using "pull-MVC" defeats the purpose of the @DataModel, because the idea of using it is not having to use "pull-MVC". I mean if I use something like:
<h:dataTable value="#{seamcomponent.loadClientsViaPullMVC}" var="c" rendered="#{seamcomponent.loadClientsViaPullMVC.rowCount>0}">
Then I don't need a @DataModel inside "seamcomponent" anymore. I also noticed, that it is not possible to use @DataModelSelection in a seam component, which does not also contain the @DataModel annotation.
That I find also strange, because I can think of many use cases in which you would want another seam component to retrieve the selected Customer to perform some actions on him.
For example, if I had a "action link" add address, then in the AddAdressAction I would want to place a @DataModelSelection to get the selected Customer from. If I do this currently, then I won't be able to easily retrieve the customer. I have to put "AddAddressAction.add()" method into the Seam Bean, which has the DataModel, where it does not belong and increases component dependancy.
I hope in this light my last post makes more sense?!
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3988401#3988401
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3988401
19Â years, 5Â months
[Installation, Configuration & Deployment] - JBoss JAXB class loading problem
by DerJohannes
Hello!
I am using JAXB 2.0 on a JBoss 4.0.4GA server. The problem is, that JBoss is choosing the wrong (v1.x) JAXB classes that are part of "jboss-j2ee.jar".
How can I get JBoss to load the JAXB classes ("javax.xml.bind...") from the
jars in the .ear-archive (jaxb-api.jar, jaxb-impl.jar and so on) INSTEAD of loading them from jboss-j2ee.jar?
I read "JBossClassLoadingUseCases"
(http://wiki.jboss.org/wiki/Wiki.jsp?page=JBossClassLoadingUseCases)
and "ClassLoadingConfiguration" (http://www.jboss.org/wiki/Wiki.jsp?page=ClassLoadingConfiguration)
in the JBoss Wiki, but don't get the application run correctly.
As soon as I add the following code in META-INF/jboss-app.xml:
| <jboss-app>
| <loader-repository>
| javax.xml.bind:loader=foobar.ear
| <loader-repository-config>
| java2ParentDelegation=false
| </loader-repository-config>
| </loader-repository>
| </jboss-app>
|
I get errors like
| 14:02:34,148 ERROR [STDERR] log4j:ERROR A "org.jboss.logging.util.OnlyOnceErrorHandler" object is not assignable to a "org.apache.log4j.spi.ErrorHandler" variable.
| 14:02:34,148 ERROR [STDERR] log4j:ERROR The class "org.apache.log4j.spi.ErrorHandler" was loaded by
| 14:02:34,148 ERROR [STDERR] log4j:ERROR [org.jboss.mx.loading.UnifiedClassLoader3@1c0a077{ url=file:/D:/jboss-4.0.4.GA/server/default/tmp/deploy/tmp746foobar.ear ,addedOrder=39}] whereas object of type
| 14:02:34,148 ERROR [STDERR] log4j:ERROR "org.jboss.logging.util.OnlyOnceErrorHandler" was loaded by [org.jboss.system.server.NoAnnotationURLClassLoader@ab95e6].
| 14:02:34,198 ERROR [STDERR] log4j:ERROR Could not create an Appender. Reported error follows.
| 14:02:34,198 ERROR [STDERR] java.lang.ClassCastException: org.jboss.logging.appender.DailyRollingFileAppender
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:165)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.java:140)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigurator.java:153)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMConfigurator.java:415)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.parseRoot(DOMConfigurator.java:384)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:783)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:666)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:616)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:602)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:460)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.LogManager.<clinit>(LogManager.java:113)
| 14:02:34,198 ERROR [STDERR] at org.apache.log4j.Logger.getLogger(Logger.java:85)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| 14:02:34,198 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
| 14:02:34,198 ERROR [STDERR] at org.apache.commons.logging.impl.Log4jProxy.<init>(Log4jProxy.java:132)
| 14:02:34,198 ERROR [STDERR] at org.apache.commons.logging.impl.Log4JLogger.<init>(Log4JLogger.java:39)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.GeneratedConstructorAccessor19.newInstance(Unknown Source)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
| 14:02:34,198 ERROR [STDERR] at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
| 14:02:34,198 ERROR [STDERR] at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
| 14:02:34,198 ERROR [STDERR] at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
| 14:02:34,198 ERROR [STDERR] at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:372)
| 14:02:34,198 ERROR [STDERR] at org.apache.tomcat.util.digester.Digester.configure(Digester.java:2557)
| 14:02:34,198 ERROR [STDERR] at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1560)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.startup.ContextConfig.processContextConfig(ContextConfig.java:781)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.startup.ContextConfig.contextConfig(ContextConfig.java:717)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:977)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:278)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.core.StandardContext.init(StandardContext.java:5130)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.core.StandardContext.start(StandardContext.java:3945)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:759)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:739)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| 14:02:34,198 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
| 14:02:34,198 ERROR [STDERR] at org.apache.commons.modeler.BaseModelMBean.invoke(BaseModelMBean.java:503)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| 14:02:34,198 ERROR [STDERR] at org.apache.catalina.core.StandardContext.init(StandardContext.java:5116)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| 14:02:34,198 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
| 14:02:34,198 ERROR [STDERR] at org.apache.commons.modeler.BaseModelMBean.invoke(BaseModelMBean.java:503)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.RawDynamicInvoker.invoke(RawDynamicInvoker.java:164)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| 14:02:34,198 ERROR [STDERR] at org.jboss.web.tomcat.tc5.TomcatDeployer.performDeployInternal(TomcatDeployer.java:297)
| 14:02:34,198 ERROR [STDERR] at org.jboss.web.tomcat.tc5.TomcatDeployer.performDeploy(TomcatDeployer.java:103)
| 14:02:34,198 ERROR [STDERR] at org.jboss.web.AbstractWebDeployer.start(AbstractWebDeployer.java:371)
| 14:02:34,198 ERROR [STDERR] at org.jboss.web.WebModule.startModule(WebModule.java:83)
| 14:02:34,198 ERROR [STDERR] at org.jboss.web.WebModule.startService(WebModule.java:61)
| 14:02:34,198 ERROR [STDERR] at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
| 14:02:34,198 ERROR [STDERR] at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| 14:02:34,198 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| 14:02:34,198 ERROR [STDERR] at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
| 14:02:34,198 ERROR [STDERR] at $Proxy0.start(Unknown Source)
| 14:02:34,198 ERROR [STDERR] at org.jboss.system.ServiceController.start(ServiceController.java:417)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| 14:02:34,198 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| 14:02:34,198 ERROR [STDERR] at $Proxy39.start(Unknown Source)
| 14:02:34,198 ERROR [STDERR] at org.jboss.web.AbstractWebContainer.start(AbstractWebContainer.java:466)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| 14:02:34,198 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:97)
| 14:02:34,198 ERROR [STDERR] at org.jboss.system.InterceptorServiceMBeanSupport.invokeNext(InterceptorServiceMBeanSupport.java:238)
| 14:02:34,198 ERROR [STDERR] at org.jboss.ws.server.WebServiceDeployer.start(WebServiceDeployer.java:117)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| 14:02:34,198 ERROR [STDERR] at $Proxy40.start(Unknown Source)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1007)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.MainDeployer.start(MainDeployer.java:997)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:808)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:771)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.GeneratedMethodAccessor14.invoke(Unknown Source)
| 14:02:34,198 ERROR [STDERR] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| 14:02:34,198 ERROR [STDERR] at java.lang.reflect.Method.invoke(Method.java:585)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
| 14:02:34,198 ERROR [STDERR] at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
| 14:02:34,198 ERROR [STDERR] at $Proxy6.deploy(Unknown Source)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:610)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274)
| 14:02:34,198 ERROR [STDERR] at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225)
|
How can I simply tell JBoss to load all javax.xml.bind.* classes from the JAXB2.0-jars in the ear, not from the old jboss4.0.4/server/default/lib/jboss-j2ee.jar AND to leave other class loading mechanisms untouched (like for log4j and so on)?
Any help would be appreciated.
Johannes
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3988396#3988396
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3988396
19Â years, 5Â months
[Management, JMX/JBoss] - Strange results with twiddle.sh when Jboss is down
by bcosnefroy
Hi,
I use twiddle.sh to monitor some attributes of my jboss server.
When the Jboss server is up, I can get without problem the attributes of the jmx-console.
However, if the server I request is down, twiddle.sh still return values (for example for FreeMemory).
I've tried to get the jboss.system:type=ServerInfo HostAddress attribute and I was surprised to see that the returned IP address is not the address of my server.
The following command:
.../twiddle.sh --server=MyServerIPAddress get "jboss.system:type=ServerInfo" HostAddress
returns another IP address which is the Ip Address of another Jboss server.
As I use twiddle.sh in the check_jmx script for Nagios, this is not really good to get values of another server when mine is down!
I use Jboss 4.0.2.
Is it a known bug of twiddle.sh?
Does anyone know how twiddle.sh search for another Jboss server on the subnet and whether this is a desired behavior?
Thanks,
Bruno
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3988394#3988394
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3988394
19Â years, 5Â months