[JBoss JIRA] Created: (JBAS-9397) Memory leak in EJB3.1 no interface view for stateful beans
by Jürgen Koras (JIRA)
Memory leak in EJB3.1 no interface view for stateful beans
----------------------------------------------------------
Key: JBAS-9397
URL: https://issues.jboss.org/browse/JBAS-9397
Project: Legacy JBoss Application Server 6
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: EJB
Affects Versions: 6.0.0.Final
Environment: All platforms
Reporter: Jürgen Koras
Assignee: Carlo de Wolf
Priority: Critical
Using a stateful no-interface bean causes a memory leak in PermGen space. This can easily be reproduced by creating and removing such a bean. On my machine it fails after 22500 instances.
The problem is that for each instance of a bean a new Proxy-class is generated.
This is done using javassist framework in the class org.jboss.ejb3.proxy.javassist.JavassistProxyFactory in method createProxy(Class[], InvocationHandler). Here the depreciated javassist method (instance).setHandler(...) is used. Due to documentation (http://www.csg.is.titech.ac.jp/~chiba/javassist/html/javassist/util/proxy...) this call deactivates the cache!
The solution is simply to remove that call and pass the handler right in the (instance).create(...) method.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 6 months
[JBoss JIRA] Created: (AS7-1237) File-based deployments stop working after either a failed attempt or an undeploy
by Jim Crossley (JIRA)
File-based deployments stop working after either a failed attempt or an undeploy
--------------------------------------------------------------------------------
Key: AS7-1237
URL: https://issues.jboss.org/browse/AS7-1237
Project: Application Server 7
Issue Type: Bug
Affects Versions: 7.0.0.CR1
Reporter: Jim Crossley
If I create a new, valid war from scratch and copy it to standalone/deployments, AS7 will deploy it fine. Further, I can touch it or overwrite it and AS7 will redeploy it. But once I undeploy it, AS7 will never deploy it again, at least not by my touching it.
Also, if I break it and cause a failed deployment, AS7 will never attempt to redeploy it as a result of my updating it. Hence, I can't overwrite an invalid war file with a valid one and have it deploy.
To force a deploy, I must either rename my.war.failed to my.war.dodeploy or use the CLI.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 6 months
[JBoss JIRA] Created: (JBRULES-2730) Duplicate rules name errors not being identified across multiple resources in same package
by Michael Pellegrini (JIRA)
Duplicate rules name errors not being identified across multiple resources in same package
------------------------------------------------------------------------------------------
Key: JBRULES-2730
URL: https://jira.jboss.org/browse/JBRULES-2730
Project: Drools
Issue Type: Bug
Security Level: Public (Everyone can see)
Environment: Windows XP, Java 1.6.0_17
Reporter: Michael Pellegrini
Assignee: Mark Proctor
The validateUniqueRuleNamesmethod in the org.drools.compiler.PackageBuilder class currently only checks for duplicate rule names that are defined within the same resource. However, in the case where there are multiple resources added to the knowledge builder that share the same package name then the validateUniqueRuleNames method is not detecting duplicates across the package.
In cases where rules have the same name and are defined in the same package then I would have expected to get a duplicate rule error but I do not as the rules are physically reside in two separate resources.
It seems logical that in addition to checking if any rules are duplicated within the resource that it also checks to see that rule was already defined in the package registry as well. Otherwise the last rule overwrites the first and creates some rather odd behavior.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 6 months
[JBoss JIRA] Commented: (JBRULES-3063) Drools should not allow set two rules with the same name for the same package
by Mark Proctor (JIRA)
[ https://issues.jboss.org/browse/JBRULES-3063?page=com.atlassian.jira.plug... ]
Mark Proctor commented on JBRULES-3063:
---------------------------------------
Rule replacement is allowed and an important part of a dynamic rule engine. I believe what we do is disallow it from the same resource (should double check that) i.e. a drl that repeats the rule twice is an error. If you load a later resource it will overwrite the previous.
Thinking about this some more. We should probably add a "getWarnings" as well as getErrors. Rule overwriting would come with a warning.
We might even find a way build warning filters, a composite set of warnings to fail on, but user defineable.
> Drools should not allow set two rules with the same name for the same package
> -----------------------------------------------------------------------------
>
> Key: JBRULES-3063
> URL: https://issues.jboss.org/browse/JBRULES-3063
> Project: Drools
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: drools-compiler
> Affects Versions: 5.1.1.FINAL
> Reporter: Alessandro Lazarotti
> Assignee: Tihomir Surdilovic
> Priority: Minor
> Fix For: FUTURE
>
>
> Drools should not allow set two rules with the same name for the same package
> As expected, Drools does not allow us to define two rules with the same name in a same DRL file.
> But if there are two rules with the same name, in the same package, but in separate files, no exception or warning is issued, just one rule overrides the other in silence.
> From documentation:
> "A rule must have a name, unique within its rule package. If a rule is defined twice in a single DRL, an error will appear when one loads it. If a DRL that includes a rule name already in the package is added, the previous rule is repalced."[1]
> [1] http://docs.redhat.com/docs/en-US/JBoss_Enterprise_SOA_Platform/5/html/JB...
> Different behavior for a similar action is not good. Both should alert user about a rule name repeated.
> For large projects using a lot of DRL files can be hard to track mistakes occurred by rules override . It is really necessary provide an ERROR message for this.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 6 months
[JBoss JIRA] Created: (AS7-1239) Don't WARN about files in WEB-INF/classes/META-INF
by jaikiran pai (JIRA)
Don't WARN about files in WEB-INF/classes/META-INF
--------------------------------------------------
Key: AS7-1239
URL: https://issues.jboss.org/browse/AS7-1239
Project: Application Server 7
Issue Type: Task
Components: EE
Affects Versions: 7.0.0.CR1
Reporter: jaikiran pai
Assignee: jaikiran pai
Currently we log a WARN message if we find any files, other than persistence.xml, in .war/WEB-INF/classes/META-INF folder. We need to get rid of the WARN since Weld looks for beans.xml in that location, although CDI doesn't mandate it, but as per the folks on seam-dev mailing list, all application servers look for beans.xml in this location (including previous version on AS). From what I understand, even AS7 looks for beans.xml in this location currently. So this WARN message is misleading and unnecessary. Let's just allow the individual techs to pick up files from this location, as they wish and get rid of this WARN.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 6 months
[JBoss JIRA] Created: (JBAS-9336) password_tool.bat generates java.lang.ClassNotFoundException
by Andrew Murphy (JIRA)
password_tool.bat generates java.lang.ClassNotFoundException
------------------------------------------------------------
Key: JBAS-9336
URL: https://issues.jboss.org/browse/JBAS-9336
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Security
Affects Versions: 6.0.0.Final
Environment: Windows
Reporter: Andrew Murphy
Assignee: Anil Saldhana
The password_tool.bat command found in %JBOSS_HOME%\bin generates a java.lang.ClassNotFoundException
D:\JBoss\jboss-6.0.0.GA\bin>password_tool.bat
**********************************
**** JBoss Password Tool********
**********************************
Keystore is null. Please specify keystore below:
0: Encrypt Keystore Password 1:Specify KeyStore 2:Create Password 3: Remove a domain 4:Enquire Domain 5:Exit
1
Enter Keystore location including the file name
password/password.keystore
Enter Keystore alias
jboss
log4j:WARN No appenders could be found for logger (org.apache.xml.security.Init).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xml/utils/URI$MalformedURIException
at org.jboss.security.integration.password.XMLEncryptionUtil.decrypt(XMLEncryptionUtil.java:205)
at org.jboss.security.integration.password.PasswordMaskManagement.load(PasswordMaskManagement.java:200)
at org.jboss.security.integration.password.PasswordTool.load(PasswordTool.java:172)
at org.jboss.security.integration.password.PasswordTool.main(PasswordTool.java:128)
Caused by: java.lang.ClassNotFoundException: org.apache.xml.utils.URI$MalformedURIException
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 4 more
org.jboss.security.integration.password.PasswordTool$ShutdownHook run called
Storing domains [
]
Exception in thread "Thread-0" java.lang.NoClassDefFoundError: org/apache/xml/utils/URI$MalformedURIException
at org.jboss.security.integration.password.XMLEncryptionUtil.encrypt(XMLEncryptionUtil.java:136)
at org.jboss.security.integration.password.PasswordMaskManagement.store(PasswordMaskManagement.java:251)
at org.jboss.security.integration.password.PasswordTool$ShutdownHook.run(PasswordTool.java:205)
Caused by: java.lang.ClassNotFoundException: org.apache.xml.utils.URI$MalformedURIException
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 3 more
The underlying problem is xalan.jar cannot be found on the classpath. In GA6.0.0 xalan.jar is located in %JBOSS_HOME%\client, not %JBOSS_HOME%\lib\endorsed, so the password_tool.bat classpath declaration needs to reflect this.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 6 months
[JBoss JIRA] Created: (JASSIST-138) CHECKCAST of javassist.bytecode.analysis.Executor.execute() is broken
by Yu Kobayashi (JIRA)
CHECKCAST of javassist.bytecode.analysis.Executor.execute() is broken
---------------------------------------------------------------------
Key: JASSIST-138
URL: https://issues.jboss.org/browse/JASSIST-138
Project: Javassist
Issue Type: Bug
Affects Versions: 3.12.0.GA
Reporter: Yu Kobayashi
Assignee: Shigeru Chiba
At execute(MethodInfo method, int pos, CodeIterator iter, Frame frame, Subroutine subroutine) of
javassist.bytecode.analysis.Executor, CHECKCAST is this.
case CHECKCAST:
verifyAssignable(Type.OBJECT, simplePop(frame));
frame.push(typeFromDesc(constPool.getClassInfo(iter.u16bitAt(pos + 1))));
break;
However, constPool.getClassInfo() doesn't returns its descriptor.
To fix this, please change it to
frame.push(typeFromDesc(constPool.getClassInfoByDescriptor(iter.u16bitAt(pos + 1))));
and add this to javassist.bytecode.ConstPool.
public String getClassInfoByDescriptor(int index) {
ClassInfo c = (ClassInfo)getItem(index);
if (c == null)
return null;
else {
String className = getUtf8Info(c.name);
if (className.charAt(0) == '[') {
return className;
} else {
return Descriptor.of(className);
}
}
}
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
13 years, 6 months