[jboss-cvs] jboss-seam/examples/blog/src/actions ...
Gavin King
gavin.king at jboss.com
Sat Sep 30 15:59:34 EDT 2006
User: gavin
Date: 06/09/30 15:59:34
Modified: examples/blog/src/actions EntryAction.java
PostAction.java SearchService.java
Added: examples/blog/src/actions BlogEntryService.java
Log:
refreshed blog example to use page parameters
Revision Changes Path
1.11 +1 -1 jboss-seam/examples/blog/src/actions/EntryAction.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: EntryAction.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/blog/src/actions/EntryAction.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- EntryAction.java 29 Sep 2006 23:15:01 -0000 1.10
+++ EntryAction.java 30 Sep 2006 19:59:34 -0000 1.11
@@ -26,7 +26,7 @@
@Out
private BlogEntry blogEntry;
- public void getBlogEntry(String id) throws EntryNotFoundException
+ public void loadBlogEntry(String id) throws EntryNotFoundException
{
blogEntry = blog.getBlogEntry(id);
if (blogEntry==null) throw new EntryNotFoundException(id);
1.7 +4 -13 jboss-seam/examples/blog/src/actions/PostAction.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: PostAction.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/blog/src/actions/PostAction.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- PostAction.java 4 Jul 2006 05:45:24 -0000 1.6
+++ PostAction.java 30 Sep 2006 19:59:34 -0000 1.7
@@ -6,10 +6,8 @@
import javax.persistence.EntityManager;
import org.jboss.seam.ScopeType;
-import org.jboss.seam.annotations.Factory;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
-import org.jboss.seam.annotations.Out;
import org.jboss.seam.annotations.Scope;
import domain.Blog;
@@ -28,20 +26,13 @@
@In(create=true) private EntityManager entityManager;
@In(required=false)
- @Out(scope=ScopeType.EVENT)
- private BlogEntry newBlogEntry;
-
- @Factory("newBlogEntry")
- public void createBlogEntry()
- {
- newBlogEntry = new BlogEntry(blog);
- }
+ private BlogEntry blogEntry;
public String post() throws IOException
{
- newBlogEntry.setDate( new Date() );
- blog.getBlogEntries().add(newBlogEntry);
- entityManager.persist(newBlogEntry);
+ blogEntry.setDate( new Date() );
+ blog.getBlogEntries().add(blogEntry);
+ entityManager.persist(blogEntry);
return "/index.xhtml";
}
1.3 +22 -16 jboss-seam/examples/blog/src/actions/SearchService.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: SearchService.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/blog/src/actions/SearchService.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- SearchService.java 27 Mar 2006 07:04:53 -0000 1.2
+++ SearchService.java 30 Sep 2006 19:59:34 -0000 1.3
@@ -4,11 +4,9 @@
import javax.persistence.EntityManager;
-import org.jboss.seam.annotations.Create;
+import org.jboss.seam.annotations.Factory;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
-import org.jboss.seam.annotations.RequestParameter;
-import org.jboss.seam.annotations.Unwrap;
import domain.BlogEntry;
@@ -17,36 +15,44 @@
*
* @author Gavin King
*/
- at Name("searchResults")
+ at Name("searchService")
public class SearchService
{
@In(create=true)
private EntityManager entityManager;
- @RequestParameter
private String searchPattern;
- private List<BlogEntry> searchResults;
-
- @Create
- public void initSearchResults()
+ @Factory("searchResults")
+ public List<BlogEntry> getSearchResults()
+ {
+ if (searchPattern==null)
+ {
+ return null;
+ }
+ else
{
- searchResults = entityManager.createQuery("from BlogEntry be where lower(be.title) like :searchPattern or lower(be.body) like :searchPattern order by be.date desc")
+ return entityManager.createQuery("from BlogEntry be where lower(be.title) like :searchPattern or lower(be.body) like :searchPattern order by be.date desc")
.setParameter( "searchPattern", getSqlSearchPattern() )
.setMaxResults(100)
.getResultList();
}
+ }
private String getSqlSearchPattern()
{
return searchPattern==null ? "" : '%' + searchPattern.toLowerCase().replace('*', '%').replace('?', '_') + '%';
}
- @Unwrap
- public List<BlogEntry> getSearchResults()
+ public String getSearchPattern()
+ {
+ return searchPattern;
+ }
+
+ public void setSearchPattern(String searchPattern)
{
- return searchResults;
+ this.searchPattern = searchPattern;
}
}
1.1 date: 2006/09/30 19:59:34; author: gavin; state: Exp;jboss-seam/examples/blog/src/actions/BlogEntryService.java
Index: BlogEntryService.java
===================================================================
package actions;
import org.jboss.seam.ScopeType;
import org.jboss.seam.annotations.Factory;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import domain.Blog;
import domain.BlogEntry;
@Name("blogEntryService")
@Scope(ScopeType.STATELESS)
public class BlogEntryService
{
@In(create=true) Blog blog;
@Factory("blogEntry")
public BlogEntry createBlogEntry()
{
return new BlogEntry(blog);
}
}
More information about the jboss-cvs-commits
mailing list