[jboss-user] [JBoss Seam] - IllegalStateException: No Transaction: what have I missed?
weliwarmer
do-not-reply at jboss.com
Tue Sep 4 08:13:26 EDT 2007
Hi,
I am maintaining someone else's code that uses JBoss Seam 1.1.0 GA. I'm just struggling with loading a DataModel: an IllegalStateException is thrown when the database query is run, stating that there is "No Transaction". I have just copied an existing, working bean so if someone could point out what I have missed, I would be grateful.
Thanks, Tim
Stack Trace....
anonymous wrote :
| java.lang.IllegalStateException: No transaction.
| at org.jboss.tm.TxManager.setRollbackOnly(TxManager.java:751)
| at org.hibernate.ejb.AbstractEntityManagerImpl.markAsRollback(AbstractEntityManagerImpl.java:392)
| at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:545)
| at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:567)
| at org.hibernate.ejb.AbstractEntityManagerImpl.createNamedQuery(AbstractEntityManagerImpl.java:90)
| at org.jboss.ejb3.entity.ExtendedEntityManager.createNamedQuery(ExtendedEntityManager.java:134)
Session Bean.....
| @Stateful
| @Name("blogFinder")
| @Scope(ScopeType.CONVERSATION)
| @TransactionAttribute(NOT_SUPPORTED)
| public class BlogFinderAction implements BlogFinder, Serializable {
|
| ...
|
| @PersistenceContext(type = EXTENDED)
| private EntityManager em;
|
| @DataModel
| private List<Blog> latestBlogs;
|
| @DataModelSelection("latestBlogs")
| @Out(required = false, scope = ScopeType.CONVERSATION)
| private Blog latestBlog;
|
| @SuppressWarnings("unchecked")
| @Factory("latestBlogs")
| public void doBlogSearch() {
| latestBlogs = null;
| latestBlogs = em.createNamedQuery("blog.findAll").getResultList();
| logger.debug("Retrieving articles for " + latestBlogs.size()
| + " blogs");
| }
... entity bean .....
| @Entity
| @Table(name="Blogs")
|
| @NamedQueries(value=
| {
| @NamedQuery(name="findAll",
| query="SELECT " +
| " a " +
| "FROM " +
| " Blog AS a ")
| }
|
| )
|
| public class Blog implements Serializable {
|
| private static final Logger LOG = Logger.getLogger(Blog.class) ;
|
| private String url;
|
| @Id
| @Column(name="URL")
| @Length(min=0, max=1000, message="URL must be between 0 and 1000 characters.")
| public String getUrl() {
| return url ;
| }
|
| public void setUrl(String url) {
| this.url = url ;
| }
| }
.... jsf ....
| <t:dataList value="#{latestBlogs}" var="blogArticle" rendered="#{not empty latestBlogs}">
| article...
| #{blogArticle.url}
| </t:dataList>
|
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4080843#4080843
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4080843
More information about the jboss-user
mailing list