[JBoss JIRA] Updated: (JBAS-3233) Web services debug logging is causing the classloader to be switched
by Dimitris Andreadis (JIRA)
[ http://jira.jboss.com/jira/browse/JBAS-3233?page=all ]
Dimitris Andreadis updated JBAS-3233:
-------------------------------------
Fix Version/s: JBossAS-4.0.5.GA
(was: JBossAS-4.0.5.CR1)
> Web services debug logging is causing the classloader to be switched
> --------------------------------------------------------------------
>
> Key: JBAS-3233
> URL: http://jira.jboss.com/jira/browse/JBAS-3233
> Project: JBoss Application Server
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: ClassLoading
> Affects Versions: JBossAS-4.0.4.GA
> Reporter: Darran Lofthouse
> Assigned To: Darran Lofthouse
> Fix For: JBossAS-4.0.5.GA
>
> Attachments: ComplexReturnEJB_DocLit.ear
>
>
> Web services debug logging is causing the classloader to be switched.
> Currently the web services stack does not correctly set the classloader for web services deployments when deployed as part of an ear with an issolated classloader (see JBWS-941). However debug logging in the web services code is incorectly causing the deployment to work!
> In the class 'org.jboss.ws.server.ServiceEndpoint' there is a method called 'postProcessResponse', this method contains some logging wrapped with a 'log.isDebugEnabled': -
> // debug the outgoing message
> if(log.isDebugEnabled())
> {
> resMessage.saveChanges();
> SOAPEnvelope soapEnv = resMessage.getSOAPPart().getEnvelope();
> String envStr = DOMWriter.printNode(soapEnv, true);
> log.debug("Outgoing SOAPMessage\n" + envStr);
> }
> If this logging is remove the ClassNotFoundException is thrown regardless of the log4j configuration.
> The ClassNotFoundException is good and shows that the classloader has not been switched.
> I will attach a deployment that can be used to reproduce this.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 3 months
[JBoss JIRA] Updated: (JBAS-1486) Allow for deployments without an explicit suffix
by Dimitris Andreadis (JIRA)
[ http://jira.jboss.com/jira/browse/JBAS-1486?page=all ]
Dimitris Andreadis updated JBAS-1486:
-------------------------------------
Fix Version/s: JBossAS-4.0.6.CR1
(was: JBossAS-4.0.5.CR1)
> Allow for deployments without an explicit suffix
> ------------------------------------------------
>
> Key: JBAS-1486
> URL: http://jira.jboss.com/jira/browse/JBAS-1486
> Project: JBoss Application Server
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: JMX, Deployment services
> Affects Versions: JBossAS-4.0.1 Final, JBossAS-4.0.1 SP1, JBossAS-3.2.7 Final
> Reporter: Scott M Stark
> Assigned To: Scott M Stark
> Fix For: JBossAS-4.0.6.CR1
>
>
> A not uncommon request is to allow for deployments that do not have a qualifying suffix, for example, myejb/ instead of myejb.jar/, mywebapp instead of mywebapp.war
> Most deployers require both a sepcific suffix and the correct deployment descriptor to exist in order to accept the deployment. We should look into supporting such deployments.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 3 months
[JBoss JIRA] Updated: (JBAS-2635) Performance enhancements to JDBC2 CMP
by Dimitris Andreadis (JIRA)
[ http://jira.jboss.com/jira/browse/JBAS-2635?page=all ]
Dimitris Andreadis updated JBAS-2635:
-------------------------------------
Fix Version/s: JBossAS-4.0.6.CR1
(was: JBossAS-4.0.5.CR1)
> Performance enhancements to JDBC2 CMP
> -------------------------------------
>
> Key: JBAS-2635
> URL: http://jira.jboss.com/jira/browse/JBAS-2635
> Project: JBoss Application Server
> Issue Type: Patch
> Security Level: Public(Everyone can see)
> Components: CMP service
> Affects Versions: JBossAS-4.0.3 SP1
> Environment: Linux/Windows
> Reporter: David Strong
> Assigned To: Alexey Loubyansky
> Priority: Minor
> Fix For: JBossAS-4.0.6.CR1
>
> Attachments: jboss-jdbc2-patches.tar.gz
>
>
> Unisys Patches For JDBC2
> Unisys have made some patches to four of the JDBC2 files:
> $JBOSS_HOME/server/src/main/org/jboss/ejb/plugins/cmp/jdbc2/bridge/JDBCCMPFieldBridge2.java
> $JBOSS_HOME/server/src/main/org/jboss/ejb/plugins/cmp/jdbc2/schema/EntityTable.java
> $JBOSS_HOME/server/src/main/org/jboss/ejb/plugins/cmp/jdbc2/schema/PartitionedTableCache.java
> $JBOSS_HOME/server/src/main/org/jboss/ejb/plugins/cmp/jdbc2/schema/TableCache.java
> All changes are tagged with /// UIS and some brief comments. Some changes have been made to JDBCCMPFieldBridge2.java and EntityTable.java to cache frequently used objects such as entity fields and primary keys.
> The majority of changes relate to the interaction between EntityTable.java, PartitionedTableCache.java and TableCache.java.
> Consider the following situation. An EJB requires a row from the database. EntityTable.java contains an inner View class. The View seems to be instantiated per transaction. The View is asked to locate the row in question. First, the View looks to an internal cache. If the row exists, it is returned. If not, PartitionedTableCache.java and then TableCache.java are used to determine if the row is in their cache. If the row exists, it is returned. If not, the View loads the row from the database and places it into its own cache. At the end of the transaction in question, the View flushes its cache into the TableCache.java cache. The next transaction along will get a new View and the process starts again.
> This mechanism is adequate if rows are being updated. In this case, TableCache.java will hold a clean copy of the row, the View will update a copy of the row and then copy it back to TableCache.java in the case of a commit or not in the case of a rollback.
> However, in the case of a read only transaction, there is a lot of wasted overhead with object creation and copies that don?t really need to occur.
> The UIS patches to EntityTable.java, PartitionedTableCache.java and TableCache.java provide a prototype that does not make excessive copies of objects when a bean is marked as read only.
> Another patch to this area allows rows, from read only tables, to be preloaded at startup time. This allows the code to access caches without locking them and does not require the row promotion logic within TableCache.java to be executed. This prototype should only be used for small, static tables.
> The patches are enabled when the <read-only-cache> and <pre-load-rows> elements appear in the jboss.xml file for a specific EJB. A sample jboss.xml file is shown below:
> <?xml version="1.0" encoding="ISO-8859-1"?>
> <!DOCTYPE jboss PUBLIC
> "-//JBoss//DTD JBOSS 3.2//EN"
> "http://www.jboss.org/j2ee/dtd/jboss_3_2.dtd">
> <jboss>
> <enterprise-beans>
> <entity>
> <ejb-name>SomeEJB</ejb-name>
> <configuration-name>SomeEJB</configuration-name>
> </entity>
> </enterprise-beans>
> <container-configurations>
> <container-configuration extends="Standard CMP 2.x EntityBean">
> <container-name>SomeEJB</container-name>
> <container-invoker-conf>
> <Optimized>True</Optimized>
> </container-invoker-conf>
> <container-cache-conf>
> <cache-policy-conf>
> <min-capacity>100</min-capacity>
> <max-capacity>100</max-capacity>
> </cache-policy-conf>
> <cache-policy-conf-other>
> <partitions>1</partitions>
> <read-only-cache>true</read-only-cache>
> <pre-load-cache>true</pre-load-cache>
> </cache-policy-conf-other>
> </container-cache-conf>
> </container-configuration>
> </container-configurations>
> </jboss>
> Although the prototype code seems to work well ? we?ve observed a 20% improvement in throughput in some test cases as well as lower CPU usage, better response times, less garbage created - we believe a better scheme could be used for read only transactions of this nature. We will investigate the possibility of using a different View for read only transactions, possibly reusing the same View for all read only transactions. The intent would be to provide caching at the View level only, to further reduce the overhead of unnecessary objection creation and copies.
> Another area of further investigation would be focused on the use of common caches between related entities. At present, it looks like entity relationships cause the same tables to be cached by different instances of EntityTable.java.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 3 months
[JBoss JIRA] Updated: (JBAS-3268) FormAuthenticator has copy/paste error
by Dimitris Andreadis (JIRA)
[ http://jira.jboss.com/jira/browse/JBAS-3268?page=all ]
Dimitris Andreadis updated JBAS-3268:
-------------------------------------
Fix Version/s: JBossAS-4.0.6.CR1
(was: JBossAS-4.0.5.CR1)
> FormAuthenticator has copy/paste error
> --------------------------------------
>
> Key: JBAS-3268
> URL: http://jira.jboss.com/jira/browse/JBAS-3268
> Project: JBoss Application Server
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: Web (Tomcat) service
> Affects Versions: JBossAS-4.0.2 Final, JBossAS-4.0.3 SP1, JBossAS-4.0.4.GA
> Reporter: Anil Saldhana
> Assigned To: Remy Maucherat
> Priority: Minor
> Fix For: JBossAS-4.0.6.CR1
>
>
> The matchRequest method of the FormAuthenticator is trying to match a URI with itself as indicated at the end of the method:
> ==================================================
> // Does the request URI match?
> String requestURI = request.getRequestURI();
> if (requestURI == null)
> return (false);
> return (requestURI.equals(request.getRequestURI()));
> ==================================================
> It should be:
> ========================================================
> // Does the request URI match?
> String requestURI = request.getRequestURI();
> if (requestURI == null)
> return (false);
> return (requestURI.equals(sreq.getRequestURI()));
> =======================================================
> This affects both org.jboss.web.tomcat.security.FormAuthenticator and
> http://svn.apache.org/repos/asf/tomcat/container/tc5.5.x/catalina/src/sha...
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
18 years, 3 months