[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1619) support for Glassfish in seam-gen
by Dan Allen (JIRA)
support for Glassfish in seam-gen
---------------------------------
Key: JBSEAM-1619
URL: http://jira.jboss.com/jira/browse/JBSEAM-1619
Project: JBoss Seam
Issue Type: Feature Request
Components: Tools
Affects Versions: 2.0.0.BETA1
Environment: Glassfish V2
Reporter: Dan Allen
I believe that adding support for Glassfish will help promote the adoption of Seam. In my mind, Tomcat is not nearly as important because it is not a Java EE-compliant environment and seam-gen is all about creating compliant projects.
Supporting Glassfish is actually quite straightforward. There are a couple of assumptions that are made by seam-gen that render it incompatible with a generic Java EE-compliant application server. Here is what needs to change:
1. The java:/ prefix on the data source causes problems with other servers. This can be easily brought into compliance by adding <use-java-context>false</use-java-context> to the *-ds.xml files and removing the java:/ prefix from the persistence-*.xml files in the seam-gen/resources/META-INF directory
2. Glassfish does not use Hibernate EntityManager as the default JPA provider, and therefore does not have any of its jar files. Of course, we could just make everyone copy necessary hibernate jar files into the glassfish installation directory, but that just isn't going to go over well. I think a better approach is to modify the build.xml file to copy the following three libraries if the property hibernate.needed=true is set:
hibernate-all.jar
thirdparty-all.jar
jboss-archive-browsing.jar (not currently in the seam distribution, but stuck inside the jboss-embedded-all.jar file)
3. Make the hibernate.transaction.manager_lookup_class parameterized, perhaps asking during setup
4. Removing the .war suffix on the exploded archive directory (so that Glassfish can deploy the directory using asadmin deploydir)
That's it! Then you can have Glassfish working.
--
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
14 years, 11 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1849) Exception handling broken
by Christian Bauer (JIRA)
Exception handling broken
-------------------------
Key: JBSEAM-1849
URL: http://jira.jboss.com/jira/browse/JBSEAM-1849
Project: JBoss Seam
Issue Type: Bug
Components: Core
Reporter: Christian Bauer
Looks like some work on the namespaces confused the exception handling:
<exception>
<redirect view-id="/message.xhtml">
<message severity="ERROR">Exception: #{org.jboss.seam.handledException.message}</message>
</redirect>
</exception>
or
<exception>
<redirect view-id="/message.xhtml">
<message severity="ERROR">Exception: #{org.jboss.seam.exception.message}</message>
</redirect>
</exception>
or (on message.xhtml):
Exception: #{org.jboss.seam.handledException}
produce:
(http-127.0.0.1-8080-2hread) 07:29:27,035 DEBUG [Exceptions] reading exception mappings from /WEB-INF/pages.xml
(http-127.0.0.1-8080-2hread) 07:29:27,039 DEBUG [Navigator] redirecting to: /message.xhtml
(http-127.0.0.1-8080-2hread) 07:29:27,041 DEBUG [FacesManager] redirecting to: /wiki/message.seam?cid=7
(http-127.0.0.1-8080-2hread) 07:29:27,043 ERROR [CachedConnectionValve] Application error: Faces Servlet did not complete its transaction
(http-127.0.0.1-8080-1hread) 07:29:27,046 TRACE [SeamPhaseListener] before phase: RESTORE_VIEW 1
(http-127.0.0.1-8080-1hread) 07:29:27,046 DEBUG [FacesLifecycle] >>> Begin JSF request
(http-127.0.0.1-8080-1hread) 07:29:27,047 DEBUG [SeamPhaseListener] beginning transaction prior to phase: RESTORE_VIEW 1
(http-127.0.0.1-8080-1hread) 07:29:27,047 DEBUG [UTTransaction] beginning JTA transaction
(http-127.0.0.1-8080-1hread) 07:29:27,048 TRACE [SeamPhaseListener] after phase: RESTORE_VIEW 1
(http-127.0.0.1-8080-1hread) 07:29:27,048 DEBUG [ConversationPropagation] Found conversation id in request parameter: 7
(http-127.0.0.1-8080-1hread) 07:29:29,048 DEBUG [Manager] No stored conversation, or concurrent call to the stored conversation
(http-127.0.0.1-8080-1hread) 07:29:29,049 DEBUG [SeamPhaseListener] committing transaction after phase: RESTORE_VIEW 1
(http-127.0.0.1-8080-1hread) 07:29:29,049 DEBUG [UTTransaction] committing JTA transaction
(http-127.0.0.1-8080-1hread) 07:29:29,050 TRACE [SeamPhaseListener] before phase: RENDER_RESPONSE 6
(http-127.0.0.1-8080-1hread) 07:29:29,050 DEBUG [SeamPhaseListener] beginning transaction prior to phase: RENDER_RESPONSE 6
(http-127.0.0.1-8080-1hread) 07:29:29,050 DEBUG [UTTransaction] beginning JTA transaction
(http-127.0.0.1-8080-1hread) 07:29:29,066 ERROR [STDERR] Aug 23, 2007 7:29:29 AM com.sun.facelets.FaceletViewHandler handleRenderException
SEVERE: Error Rendering View[/message.xhtml]
javax.el.ELException: /message.xhtml: Property 'handledException' not found on type org.jboss.seam.Namespace
at com.sun.facelets.compiler.TextInstruction.write(TextInstruction.java:48)
at com.sun.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:39)
at com.sun.facelets.compiler.UILeaf.encodeAll(UILeaf.java:149)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:577)
at org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
at org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:82)
at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:395)
at org.jboss.seam.wiki.core.ui.WikiUrlRewriteFilter.doFilter(WikiUrlRewriteFilter.java:45)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:68)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:72)
at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:85)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:68)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:64)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:68)
at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:44)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:68)
at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:60)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:68)
at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:68)
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:149)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
--
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
14 years, 11 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1206) improve i18n in seam-gen
by Pierre Raoul (JIRA)
improve i18n in seam-gen
------------------------
Key: JBSEAM-1206
URL: http://jira.jboss.com/jira/browse/JBSEAM-1206
Project: JBoss Seam
Issue Type: Feature Request
Components: Tools
Affects Versions: 1.2.1.GA
Reporter: Pierre Raoul
It would be great that seam-gen will generate crud pages and classes for an existing Entity class:
- with all the literals replaced with #{messages['key']}
- and i18n default messages generated
Herewith files of a draft version.
I used the jpaconfiguration propositions from JBSEAM-843.
It works under Eclipse: the target "updatecrud" in the project build.xml can be run from Eclipse.
Nota: to translated Enum type, test of this type had to be added. I did it through file inclusion. So it can be used with any other project specific types, e.g. in the attached zip with joda-time type.
--
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
14 years, 11 months
[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-3712) Seam performance regression from 2.1.0.SP1 to 2.1.1.CR1
by Jay Balunas (JIRA)
Seam performance regression from 2.1.0.SP1 to 2.1.1.CR1
-------------------------------------------------------
Key: JBSEAM-3712
URL: https://jira.jboss.org/jira/browse/JBSEAM-3712
Project: Seam
Issue Type: Bug
Components: Core, Platform interoperability
Affects Versions: 2.1.0.SP1
Environment: Fedora 8
JDK 5
Reporter: Jay Balunas
Priority: Blocker
Fix For: 2.1.1.CR2
Working with the latest trunk (r9557) and testing the performance changes that were made. Previous tests were done with (r9017). Just as a refresher my baseline test uses the wiki example with all of the sfwk.org data up to July 31st 2008.
For these tests I use JBoss AS 4.2.3 with JDK5 on my linux machine. Jmeter is used to load test and calculate the results and graphs. I then use JProfiler to to identify either blocking threads, call graphs, and CPU usage. I was using a mixture of 25 and 50 users - hitting the server 25 times each. As before they were accessing the first page of the user forum.
With r9017 the 25 user x 25 requests averaged 3 seconds a request. With trunk they were 100+ seconds. Thinking something was wrong with the system I replaced the 9557 wiki.war with the 9017 and reran with all other variables the same. Again the 9017 saw about 3 seconds for the average over the 625 requests.
I then profiled the server under load as I did before. The methods below appear to be the primary offenders although as with most blocking threads there are some others waiting on the same monitor.
-----------------------------------
1) com.arjuna.ats.jbossatx.jta.TransactionManagerDelegate.findLock(..)
- This appears to be the biggest issue. Every requests are generating many of these calls.
- http://viewvc.jboss.org/cgi-bin/viewvc.cgi/labs/labs/jbosstm/branches/JBO...
- It looks like every interaction with any transaction causing synchronization issues with this call.
- We'll need to find a way to limit these calls.
- I'm guessing some of the changes made for JBSEAM-3519 may be the cause although I have not had time to look deeper.
- See : http://fisheye.jboss.org/browse/Seam/trunk/src/main/org/jboss/seam/transa...
http://fisheye.jboss.org/browse/Seam/trunk/src/main/org/jboss/seam/util/W...
-----------------------------------
2) org.jboss.naming.ENCFactory.getObjectInstance()
javax.naming.Context.lookup(java.lang.String)
This appears to be the second biggest offender and it looks like we are no longer blocking on retrieving the InitialContext, but now blocking on performing the lookups using the context.
-----------------------------------
3) org.jboss.resource.connectionmanager.CachedConnectionManager.unregisterConnection()
org.jboss.resource.connectionmanager.CachedConnectionManager.registerConnection()
This is the third biggest issue, but much less than the others. 1 or 2 dozen blocks on 60 requests. These are all related to hibernate calls and database access from what I've seen so far.
-----------------------------------
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 11 months