[Messaging, JMS & JBossMQ] - Jboss (websphere MQ), afther rollback message unvisible unti
by kimatrix
Hi,
I have connected Jboss with Websphere MQ and that works oke. I can also rollback by throwing exception or by setting setrollbackonly. Couple of days ago i asked how to stop delivery of the messages until the application starts, i got a answer and i have also implemented that. Now i can stop/start the delivery from my application but there is something strange.
My message enters my bean, i try to do something with it and if it goes wrong i stop the delivery and i try to rollback the message. In Jboss i see that the rollback has taken place but i do not see my message in MQ. If i manually start the delivery again all other messages in MQ will be processed but the first message is still in the air meaning it is in Jboss. If i shut down jboss the first message will be back in MQ with the flag rollbacked.
So for some reason i can not stop the delivery and let the message rollback to MQ. Does anyone know how i can manage to stop delivery on error and also rollback the message to MQ?
It shouldn?t be a problem that message is in Jboss as long as it would start to process after manual start but it does not. Also if i don't restart my Jboss the transaction gives timeouts and keeps doing rollbacks.
If I stop the delivery manually while the bean is processing messages it all goes right, meaning that I don?t loose messages they all get back to MQ. So how come that it manually works and from the application not?
Only thing I could think of now is that the rollback depends of the delivery (maybe the message listener) to rollback the message. If this is so then it is a bit weird.
I hope someone has any idea how this is possible.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3981291#3981291
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3981291
19 years, 6 months
[JBossCache] - Single Node with multiple data items vs Multiple Nodes with
by ritukedia
Hi All,
We are investigating the suitability of using JBossCache with Berkley DB JE for our application.
We have come across a strange behaviour when JBossCache persists data items to BDB JE:
When multiple instances of a class are inserted in cache as multiple data items in a single node of JBoss TreeCache, i.e. under the same FQN - the size of the BDB varies significantly as compared to when the same no of multiple instances are inserted in cache in separate nodes of TreeCache, i.e. under different FQNs
The difference in BDB file size is in the order of 50X. The multiple node with single data item each results in much much smaller BDB file. The single node with multiple data items results in 50 times bigger BDB file.
To rule out the problem from the BDB size, I performed the same test as above by directly inserting objects in BDB (instead of using BDB as a cache persistence layer). From BDB's perspective having a single data entry vs having multiple data entries does not make any difference to the size of the jdb file. It is the same in both cases.
We would very much appreciate any help in understanding this behaviour of JBossCache and also to understand the recommended approach for caching.
Thanks in advance,
Best Regards,
Ritu Kedia
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3981286#3981286
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3981286
19 years, 6 months
[JBoss Messaging] - Re: message priority working jboss messaging 1.0.1???
by markusw
"timfox" wrote : By default messages will be prefetched into consumers.
|
| Since your consumer is so slow, you could try setting prefetch to a lower value (like 1).
|
| Prefetch is vital for high peformance consumers.
This improves the situation a bit.
with a prefetch size=10 I saw a burst of 10 high prio msg taking turns with approx. 100 low prio messages like:
BOOOOOOOOBBB.........BBBBBBOOOOOOOOOBBBB..........BBBOOOOOOOO....
with prefetch size=1 I see one or two high prio messages separated by approx. 10 low prio messages.
BOOOBBBBBBBOOBBBBBBBBOOBBBBBBBBOOBBBBBBBB
Still, the rtt for high prio messages is in the order of seconds because of these low prio messages. With just high prio messages the rtt is less than 15msg on my linux box. The jboss.mq stack kept this below 100ms (if I remember correctly) when additional low prio messages where in the queue.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3981285#3981285
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3981285
19 years, 6 months
[JBoss Seam] - Creating RSS feed ?
by lcoetzee
Hi,
I have been trying to create a rss feed publishing things (new elements) along the line of the example in the jboss-seam blog example. For some very weird reason I am not able to get Seam to inject/unwrap when the rss news feed page is accessed.
my rss page looks something like this(rssNewsFeed.rss):
<rss version="0.91"
| xmlns:ui="http://java.sun.com/jsf/facelets"
| xmlns:h="http://java.sun.com/jsf/html">
| <channel>
|
| <title>This is a RSS feed </title>
| <link>http://localhost:8080/portal/public/content/view/viewServicesHome.jsf</link>
| <description>This is a description of the rss feed</description>
| <language>en</language>
|
|
|
| <ui:repeat value="#{rssFeed.entries}" var="content">
| <item>
| <title>#{content.contentName.name}</title>
| <link>http://localhost:8080/portal/public/content/view/viewContent.jsf?selected...</link>
| <description>
| <h:outputText value="#{content.contentDescription.description}"/>
| </description>
| </item>
| </ui:repeat>
|
|
| </channel>
| </rss>
|
with my manager component:
| @Name("rssFeed")
| @Scope(ScopeType.STATELESS)
| public class RSSFeed {
|
| @In(create=true)
| RSS rssBean;
|
|
| private List<Content> entries;
|
|
| @Unwrap
| public RSSFeed listAllNewContent() throws NAPPublicException{
| entries = rssBean.listAllNewContent();
| return this;
| }
|
|
| public List<Content> getEntries() {
| return entries;
| }
|
|
| public void setEntries(List<Content> entries) {
| this.entries = entries;
| }
|
| }
|
|
I am able to subscribe to the rss feed using a normal aggregator, but for some reason when the page is accessed Seam does not intercept and outject/unwrap the RSSFeed component.
Is there something else I must set to get the rss page populated (with the dynamic stuff) when it is accessed ? It is almost as if Seam/tomcat/jboss does not know it has to intercept and do its things when the page is retrieved.
I am sure it is something stupid (it is very similar to the blog example). Any suggestions would be appreciated.
Thanks
Louis
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3981284#3981284
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3981284
19 years, 6 months
[EJB 3.0] - Problem in mapping a many to many relation to a list
by elenh
Hi,
I have a problem with mapping a many to many relation to a list.
I have a Many to Many relation in my database between tables baskets and products. This relation is implemented with a join table basket_products, which has two fields which correspond to the foreign keys to tables baskets and products. The join table need to have another one column "order", which defines the order of the products for the specific basket.
In my mapping I have:
|
| @Entity
| @Table(name = "baskets", uniqueConstraints = {})
| public class Components implements java.io.Serializable {
|
| @ManyToMany(cascade = { CascadeType.ALL }, fetch = FetchType.LAZY)
| @JoinTable( name="baskets_products",
| joinColumns=@JoinColumn(name="b_id", referencedColumnName="pr_id"),
| inverseJoinColumns=@JoinColumn(name="pr_id", referencedColumnName="pr_id"))
|
| //This of course doesn't work!!
| //@OrderBy(value="order")
|
| public List<Products> getProductses() {
| return this.productses;
| }
|
| public void setProductses(
| List<Products> productses) {
| this.productses = productses;
| }
|
|
|
| @Entity
| @Table(name = "products", uniqueConstraints = { })
| public class Products implements java.io.Serializable {
|
| @ManyToMany(cascade = { CascadeType.ALL }, fetch = FetchType.LAZY, mappedBy = "productses")
| public Set<Baskets> getBasketses() {
| return this.basketses;
| }
|
| public void setBasketses(Set<Basket> basketses) {
| this.basketses = basketses;
| }
|
|
|
In the EJB spec I read that :
"The property or field name must correspond to that of a persistent property or field of the associated
class."
What to do if I want to use a field from the join table to do the ordering of the list??
My problem is that the field "order", is not defined to the EJB container as a persistent field, so it cannot be used. But for my needs it is necessary that this field is included in the join table.
I thought that I could use the secondary table annotation to map the join table to the Baskets class, as well, so that I can define the order field, but this solution seems to me as a really wrong one.
Can anyone help me??
Thanks,
Elenh.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3981282#3981282
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3981282
19 years, 6 months
[JBoss Seam] - Re: s:validateAll and ui:include/ui:insert
by atao
After some new trials I found that to avoid the NPE with s:validate(All) I had to get an instance outjected by a bean and not through a method of this bean, i.e. "job.name" and not "jobEditor.entity.name".
Now I get this exception:
| 14:09:42,890 ERROR [SeamExceptionFilter] uncaught exception handled by Seam
| javax.servlet.ServletException: Error calling action method of component with id _id27:_id47
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:121)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:30)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:45)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| 14:09:42,890 INFO [SeamExceptionFilter] killing transaction
| 14:09:42,890 ERROR [[Faces Servlet]] Servlet.service() for servlet Faces Servlet threw exception
| javax.faces.FacesException: Error calling action method of component with id _id27:_id47
| at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:74)
| at javax.faces.component.UICommand.broadcast(UICommand.java:106)
| at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:90)
| at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:164)
| at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(LifecycleImpl.java:316)
| at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:106)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamRedirectFilter.doFilter(SeamRedirectFilter.java:30)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.seam.servlet.SeamExceptionFilter.doFilter(SeamExceptionFilter.java:45)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: javax.faces.el.EvaluationException: /WEB-INF/layout/editor.xhtml @33,59 action="#{editor_.create}": javax.ejb.EJBTransactionRolledbackException: org.hibernate.validator.InvalidStateException: validation failed for: org.popsuite.payroll.domain.Job
| at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:73)
| at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:63)
| ... 30 more
| Caused by: javax.ejb.EJBTransactionRolledbackException: org.hibernate.validator.InvalidStateException: validation failed for: org.popsuite.payroll.domain.Job
| at org.jboss.ejb3.tx.Ejb3TxPolicy.handleInCallerTx(Ejb3TxPolicy.java:93)
| at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:130)
| at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:201)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:81)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:78)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:188)
| at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:98)
| at $Proxy604.create(Unknown Source)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at com.sun.el.parser.AstValue.invoke(AstValue.java:151)
| at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
| at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:68)
| at com.sun.facelets.el.LegacyMethodBinding.invoke(LegacyMethodBinding.java:69)
| ... 31 more
| Caused by: org.hibernate.validator.InvalidStateException: validation failed for: org.popsuite.payroll.domain.Job
| at org.hibernate.validator.event.ValidateEventListener.validate(ValidateEventListener.java:104)
| at org.hibernate.validator.event.ValidateEventListener.onPreInsert(ValidateEventListener.java:127)
| at org.hibernate.action.EntityIdentityInsertAction.preInsert(EntityIdentityInsertAction.java:106)
| at org.hibernate.action.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:41)
| at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)
| at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:290)
| at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:180)
| at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:108)
| at org.hibernate.event.def.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:131)
| at org.hibernate.event.def.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:87)
| at org.hibernate.event.def.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:38)
| at org.hibernate.impl.SessionImpl.firePersist(SessionImpl.java:620)
| at org.hibernate.impl.SessionImpl.persist(SessionImpl.java:594)
| at org.hibernate.impl.SessionImpl.persist(SessionImpl.java:598)
| at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:186)
| at org.popsuite.payroll.business.AbstractEditorAction.create(AbstractEditorAction.java:170)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
| at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
| at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
| at org.jboss.seam.interceptors.ValidationInterceptor.validateTargetComponent(ValidationInterceptor.java:64)
| at sun.reflect.GeneratedMethodAccessor520.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
| at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:90)
| at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60)
| at org.jboss.seam.interceptors.OutcomeInterceptor.interceptOutcome(OutcomeInterceptor.java:21)
| at sun.reflect.GeneratedMethodAccessor519.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
| at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:90)
| at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60)
| at org.jboss.seam.interceptors.RollbackInterceptor.rollbackIfNecessary(RollbackInterceptor.java:30)
| at sun.reflect.GeneratedMethodAccessor518.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
| at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:90)
| at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60)
| at org.jboss.seam.interceptors.BijectionInterceptor.bijectTargetComponent(BijectionInterceptor.java:33)
| at sun.reflect.GeneratedMethodAccessor517.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
| at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:90)
| at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60)
| at org.jboss.seam.interceptors.ConversationInterceptor.endOrBeginLongRunningConversation(ConversationInterceptor.java:82)
| at sun.reflect.GeneratedMethodAccessor516.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
| at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:90)
| at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60)
| at org.jboss.seam.interceptors.BusinessProcessInterceptor.manageBusinessProcessContext(BusinessProcessInterceptor.java:60)
| at sun.reflect.GeneratedMethodAccessor515.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
| at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:90)
| at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60)
| at org.jboss.seam.interceptors.RemoveInterceptor.removeIfNecessary(RemoveInterceptor.java:39)
| at sun.reflect.GeneratedMethodAccessor514.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
| at org.jboss.seam.interceptors.Interceptor.aroundInvoke(Interceptor.java:90)
| at org.jboss.seam.interceptors.SeamInvocationContext.proceed(SeamInvocationContext.java:60)
| at org.jboss.seam.ejb.SeamInterceptor.aroundInvokeInContexts(SeamInterceptor.java:73)
| at org.jboss.seam.ejb.SeamInterceptor.aroundInvoke(SeamInterceptor.java:45)
| at sun.reflect.GeneratedMethodAccessor513.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
| at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
| ... 54 more
|
The included file is:
| <?xml version="1.0" encoding="iso-8859-1"?>
| <!DOCTYPE composition PUBLIC
| "-//W3C//DTD XHTML 1.0 Transitional//EN"
| "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
| <ui:composition xmlns="http://www.w3.org/1999/xhtml"
| xmlns:ui="http://java.sun.com/jsf/facelets"
| xmlns:h="http://java.sun.com/jsf/html"
| xmlns:f="http://java.sun.com/jsf/core"
| xmlns:s="http://jboss.com/products/seam/taglib"
| >
| <div class="entry">
| <div class="label"><h:outputLabel for="malename">
| <h:outputText
| value="#{messages['popsuite.view.job.name.male']}" />
| </h:outputLabel>
| </div>
| <div class="input"><h:inputText id="malename" value="#{job.maleName}"><s:validate /></h:inputText>
| <br />
| <span class="errors"><h:message for="malename" /></span>
| </div>
| </div>
| <div class="entry">
| <div class="label"><h:outputLabel for="femalename">
| <h:outputText
| value="#{messages['popsuite.view.job.name.female']}" />
| </h:outputLabel>
| </div>
| <div class="input"><h:inputText id="femalename" value="#{job.femaleName}"><s:validate /></h:inputText>
| <br />
| <span class="errors"><h:message for="femalename" /></span>
| </div>
| </div>
| </ui:composition>
|
and the including file is:
| <?xml version="1.0" encoding="iso-8859-1"?>
| <!DOCTYPE composition PUBLIC
| "-//W3C//DTD XHTML 1.0 Transitional//EN"
| "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
| <ui:composition xmlns="http://www.w3.org/1999/xhtml"
| xmlns:fn="http://java.sun.com/jsp/jstl/functions"
| xmlns:ui="http://java.sun.com/jsf/facelets"
| xmlns:h="http://java.sun.com/jsf/html"
| xmlns:f="http://java.sun.com/jsf/core"
| xmlns:s="http://jboss.com/products/seam/taglib"
| template="template.xhtml"
| >
|
| <ui:define name="content">
| <div class="section">
| <h1><h:outputText value="#{editorTitle_}"/></h1>
| </div>
|
| <div class="section">
| <h:form>
| <h:outputText value="#{entityIdLabel_} #{editor_.instance.id}" rendered="#{!empty editor_.instance.id}"/>
| <fieldset>
| <ui:insert name="attributes">
| <ui:include src="/WEB-INF/crud/#{fn:toLowerCase(editor_.instance.class.simpleName)}Inputs.xhtml"/>
| </ui:insert>
| </fieldset>
|
| <div class="entry errors"><h:messages globalOnly="true"/></div>
| <fieldset class="buttonBox">
| <h:commandButton type="submit" value="#{messages['popsuite.view.common.validate.button']}"
| action="#{editor_.create}"
| rendered="#{editor_.new}"
| class="button" />
| <h:commandButton type="submit" value="#{messages['popsuite.view.common.validate.button']}"
| action="#{editor_.update}"
| rendered="#{!editor_.new}"
| class="button" />
| <h:commandButton type="submit" value="#{messages['popsuite.view.common.delete.button']}"
| action="#{editor_.delete}"
| rendered="#{!editor_.new}"
| class="button" />
| <h:commandButton type="submit" value="#{messages['popsuite.view.common.quit.button']}"
| immediate="true"
| action="#{editor_.done}"
| class="button" />
| </fieldset>
| </h:form>
| </div>
|
| </ui:define>
|
| </ui:composition>
|
The validation by Hibernate is done but the exception is not caught by Seam to redisplay the input view.
Is it possible to use s:validate(All) in such a way? If yes I don't see what I did wrong.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3981281#3981281
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3981281
19 years, 6 months