[jboss-cvs] JBossBlog SVN: r139 - in trunk: resources/WEB-INF and 9 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Nov 26 12:44:46 EST 2007
Author: adamw
Date: 2007-11-26 12:44:46 -0500 (Mon, 26 Nov 2007)
New Revision: 139
Added:
trunk/src/action/org/jboss/blog/session/category/
trunk/src/action/org/jboss/blog/session/category/CategoryServiceBean.java
trunk/src/action/org/jboss/blog/tools/Pair.java
trunk/src/model/org/jboss/blog/model/Category.java
Removed:
trunk/src/model/org/jboss/blog/model/Blog.java
Modified:
trunk/resources/META-INF/persistence-dev.xml
trunk/resources/WEB-INF/pages.xml
trunk/src/action/org/jboss/blog/session/manage/FeedModBean.java
trunk/src/action/org/jboss/blog/session/manage/aggregated/AggregatedFeedModBean.java
trunk/src/action/org/jboss/blog/session/manage/remote/RemoteFeedModBean.java
trunk/src/action/org/jboss/blog/session/parser/ParserService.java
trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java
trunk/src/model/org/jboss/blog/model/Feed.java
trunk/src/model/org/jboss/blog/model/Post.java
trunk/view/manage/feed_mod.xhtml
trunk/view/manage/index.xhtml
Log:
Modified: trunk/resources/META-INF/persistence-dev.xml
===================================================================
--- trunk/resources/META-INF/persistence-dev.xml 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/resources/META-INF/persistence-dev.xml 2007-11-26 17:44:46 UTC (rev 139)
@@ -11,7 +11,7 @@
<properties>
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<property name="hibernate.hbm2ddl.auto" value="update"/>
- <property name="hibernate.show_sql" value="true"/>
+ <property name="hibernate.show_sql" value="false"/>
<property name="hibernate.format_sql" value="true"/>
<property name="jboss.entity.manager.factory.jndi.name" value="java:/blogEntityManagerFactory"/>
</properties>
Modified: trunk/resources/WEB-INF/pages.xml
===================================================================
--- trunk/resources/WEB-INF/pages.xml 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/resources/WEB-INF/pages.xml 2007-11-26 17:44:46 UTC (rev 139)
@@ -46,6 +46,15 @@
</navigation>
</page>
+ <page view-id="/manage/feed_delete.xhtml">
+ <begin-conversation flush-mode="manual" join="true" />
+ <param name="name" converterId="feedConverter" value="#{feedMod.feed}" />
+ <navigation from-action="#{feedMod.delete}">
+ <end-conversation />
+ <redirect view-id="/manage/index.xhtml" />
+ </navigation>
+ </page>
+
<!-- Manage remote feeds -->
<page view-id="/manage/remote/remote_add.xhtml" conversation-required="true">
Added: trunk/src/action/org/jboss/blog/session/category/CategoryServiceBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/category/CategoryServiceBean.java (rev 0)
+++ trunk/src/action/org/jboss/blog/session/category/CategoryServiceBean.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -0,0 +1,32 @@
+package org.jboss.blog.session.category;
+
+import org.jboss.blog.model.Category;
+import org.jboss.seam.ScopeType;
+import org.jboss.seam.annotations.In;
+import org.jboss.seam.annotations.Name;
+import org.jboss.seam.annotations.Scope;
+
+import javax.persistence.EntityManager;
+import javax.persistence.NonUniqueResultException;
+
+/**
+ * @author <a href="mailto:adam at warski.org">Adam Warski</a>
+ */
+ at Scope(ScopeType.STATELESS)
+ at Name("categoryService")
+public class CategoryServiceBean {
+ @In
+ private EntityManager entityManager;
+
+ public Category getCategory(String name) {
+ try {
+ return (Category) entityManager.createQuery("select cat from Category cat where cat.name = ?1")
+ .setParameter(1, name).getSingleResult();
+ } catch (NonUniqueResultException e) {
+ Category ret = new Category(name);
+ entityManager.persist(ret);
+
+ return ret;
+ }
+ }
+}
Modified: trunk/src/action/org/jboss/blog/session/manage/FeedModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/manage/FeedModBean.java 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/manage/FeedModBean.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -37,11 +37,11 @@
}
public void saveNew() {
- entityManager.persist(feed.getBlog());
+ entityManager.persist(feed);
entityManager.persist(feed);
- for (Post p : feed.getBlog().getPosts()) {
+ for (Post p : feed.getPosts()) {
entityManager.persist(p);
}
@@ -51,4 +51,8 @@
public void saveExisting() {
entityManager.flush();
}
+
+ public void delete() {
+ entityManager.remove(getFeed());
+ }
}
Modified: trunk/src/action/org/jboss/blog/session/manage/aggregated/AggregatedFeedModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/manage/aggregated/AggregatedFeedModBean.java 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/manage/aggregated/AggregatedFeedModBean.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -1,7 +1,6 @@
package org.jboss.blog.session.manage.aggregated;
import org.jboss.blog.model.AggregatedFeed;
-import org.jboss.blog.model.Blog;
import org.jboss.blog.model.Feed;
import org.jboss.blog.model.Post;
import org.jboss.blog.service.FeedsService;
Modified: trunk/src/action/org/jboss/blog/session/manage/remote/RemoteFeedModBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/manage/remote/RemoteFeedModBean.java 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/manage/remote/RemoteFeedModBean.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -1,6 +1,5 @@
package org.jboss.blog.session.manage.remote;
-import org.jboss.blog.model.Blog;
import org.jboss.blog.model.RemoteFeed;
import org.jboss.blog.session.manage.FeedModBean;
import org.jboss.blog.session.manage.InvalidFeedTypeException;
Modified: trunk/src/action/org/jboss/blog/session/parser/ParserService.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/parser/ParserService.java 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/parser/ParserService.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -1,15 +1,19 @@
package org.jboss.blog.session.parser;
-import org.jboss.blog.model.Blog;
+import org.jboss.blog.model.Feed;
+import org.jboss.blog.model.Post;
+import org.jboss.blog.tools.Pair;
import javax.ejb.Local;
+import java.util.List;
/**
* @author <a href="mailto:adam at warski.org">Adam Warski</a>
*/
@Local
public interface ParserService {
- Blog parse(String link) throws ParserException;
void remove();
+
+ List<Post> parse(String link, Feed toFill) throws ParserException;
}
Modified: trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/action/org/jboss/blog/session/parser/ParserServiceImpl.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -7,10 +7,14 @@
import com.sun.syndication.io.FeedException;
import com.sun.syndication.io.SyndFeedInput;
import com.sun.syndication.io.XmlReader;
-import org.jboss.blog.model.Blog;
+import org.jboss.blog.model.Category;
+import org.jboss.blog.model.Feed;
import org.jboss.blog.model.Post;
+import org.jboss.blog.session.category.CategoryServiceBean;
+import org.jboss.blog.tools.Pair;
import org.jboss.blog.tools.StringTools;
import org.jboss.seam.annotations.AutoCreate;
+import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Name;
import javax.ejb.Remove;
@@ -19,6 +23,7 @@
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
+import java.util.List;
/**
* @author <a href="mailto:adam at warski.org">Adam Warski</a>
@@ -27,25 +32,26 @@
@Name("parserService")
@AutoCreate
public class ParserServiceImpl implements ParserService {
- public Blog parse(String link) throws ParserException {
+ @In
+ private CategoryServiceBean categoryService;
+
+ public List<Post> parse(String link, Feed toFill) throws ParserException {
try {
SyndFeedInput input = new SyndFeedInput();
- SyndFeed feed = input.build(new XmlReader(new URL(link)));
+ SyndFeed syndFeed = input.build(new XmlReader(new URL(link)));
- Blog blog = new Blog();
- blog.setAuthor(feed.getAuthor());
- blog.setDescription(feed.getDescription());
- blog.setLink(feed.getLink());
- blog.setTitle(feed.getTitle());
- blog.setPosts(new ArrayList<Post>());
+ toFill.setAuthor(syndFeed.getAuthor());
+ toFill.setDescription(syndFeed.getDescription());
+ toFill.setLink(syndFeed.getLink());
+ toFill.setTitle(syndFeed.getTitle());
- if (feed.getEntries() != null) {
- for (Object entryObj : feed.getEntries()) {
+ List<Post> posts = new ArrayList<Post>();
+ if (syndFeed.getEntries() != null) {
+ for (Object entryObj : syndFeed.getEntries()) {
SyndEntry entry = (SyndEntry) entryObj;
Post post = new Post();
- post.setBlog(blog);
- post.setAuthor(StringTools.isEmpty(entry.getAuthor()) ? blog.getAuthor() : entry.getAuthor());
+ post.setAuthor(StringTools.isEmpty(entry.getAuthor()) ? toFill.getAuthor() : entry.getAuthor());
for (Object contentObj : entry.getContents()) {
SyndContent content = (SyndContent) contentObj;
@@ -55,10 +61,10 @@
}
}
- post.setCategories(new ArrayList<String>());
+ post.setCategories(new ArrayList<Category>());
for (Object categoryObj : entry.getCategories()) {
SyndCategory category = (SyndCategory) categoryObj;
- post.getCategories().add(category.getName());
+ post.getCategories().add(categoryService.getCategory(category.getName()));
}
post.setTitle(entry.getTitle());
@@ -66,13 +72,12 @@
post.setModified(
entry.getUpdatedDate() == null ? entry.getPublishedDate() : entry.getUpdatedDate());
post.setLink(entry.getLink());
- post.setGuid(entry.getUri() == null ? entry.getLink() : entry.getUri());
- blog.getPosts().add(post);
+ posts.add(post);
}
}
- return blog;
+ return posts;
} catch (FeedException e) {
throw new ParserException(e);
} catch (MalformedURLException e) {
Added: trunk/src/action/org/jboss/blog/tools/Pair.java
===================================================================
--- trunk/src/action/org/jboss/blog/tools/Pair.java (rev 0)
+++ trunk/src/action/org/jboss/blog/tools/Pair.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -0,0 +1,34 @@
+package org.jboss.blog.tools;
+
+/**
+ * @author <a href="mailto:adam at warski.org">Adam Warski</a>
+ */
+public class Pair<T1, T2> {
+ private T1 first;
+ private T2 second;
+
+ public Pair(T1 first, T2 second) {
+ this.first = first;
+ this.second = second;
+ }
+
+ public T1 getFirst() {
+ return first;
+ }
+
+ public void setFirst(T1 first) {
+ this.first = first;
+ }
+
+ public T2 getSecond() {
+ return second;
+ }
+
+ public void setSecond(T2 second) {
+ this.second = second;
+ }
+
+ public static <T1, T2> Pair<T1,T2> createPair(T1 first, T2 second) {
+ return new Pair<T1, T2>(first, second);
+ }
+}
Deleted: trunk/src/model/org/jboss/blog/model/Blog.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Blog.java 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/model/org/jboss/blog/model/Blog.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -1,113 +0,0 @@
-package org.jboss.blog.model;
-
-import org.hibernate.validator.Length;
-import org.hibernate.validator.NotEmpty;
-
-import javax.persistence.*;
-import java.util.List;
-
-/**
- * @author <a href="mailto:adam at warski.org">Adam Warski</a>
- */
- at Entity
-public class Blog {
- @Id
- @GeneratedValue
- private Integer id;
-
- @NotEmpty
- @Length(max = 512)
- private String title;
-
- @Length(max = 256)
- private String author;
-
- @Length(max = 512)
- @NotEmpty
- private String link;
-
- @OneToMany(cascade = {CascadeType.REMOVE}, mappedBy = "blog")
- private List<Post> posts;
-
- @OneToOne(mappedBy = "blog")
- private Feed feed;
-
- @Lob
- private String description;
-
- public Integer getId() {
- return id;
- }
-
- public void setId(Integer id) {
- this.id = id;
- }
-
- public String getTitle() {
- return title;
- }
-
- public void setTitle(String title) {
- this.title = title;
- }
-
- public String getAuthor() {
- return author;
- }
-
- public void setAuthor(String author) {
- this.author = author;
- }
-
- public String getLink() {
- return link;
- }
-
- public void setLink(String link) {
- this.link = link;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public List<Post> getPosts() {
- return posts;
- }
-
- public void setPosts(List<Post> posts) {
- this.posts = posts;
- }
-
- public Feed getFeed() {
- return feed;
- }
-
- public void setFeed(Feed feed) {
- this.feed = feed;
- }
-
- public boolean equals(Object o) {
- if (this == o) return true;
- if (!(o instanceof Blog)) return false;
-
- Blog blog = (Blog) o;
-
- if (id != null ? !id.equals(blog.id) : blog.id != null) return false;
- if (link != null ? !link.equals(blog.link) : blog.link != null) return false;
-
- return true;
- }
-
- public int hashCode() {
- int result;
- result = (id != null ? id.hashCode() : 0);
- result = 31 * result + (link != null ? link.hashCode() : 0);
- return result;
- }
-}
-
Added: trunk/src/model/org/jboss/blog/model/Category.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Category.java (rev 0)
+++ trunk/src/model/org/jboss/blog/model/Category.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -0,0 +1,65 @@
+package org.jboss.blog.model;
+
+import org.hibernate.validator.NotEmpty;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+
+/**
+ * @author <a href="mailto:adam at warski.org">Adam Warski</a>
+ */
+ at Entity
+public class Category {
+ @Id
+ @GeneratedValue
+ @Column(updatable = false)
+ private Integer id;
+
+ @NotEmpty
+ @Column(unique = true)
+ private String name;
+
+ public Category(String name) {
+ this.name = name;
+ }
+
+ public Category() {
+ }
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (!(o instanceof Category)) return false;
+
+ Category category = (Category) o;
+
+ if (id != null ? !id.equals(category.id) : category.id != null) return false;
+ if (name != null ? !name.equals(category.name) : category.name != null) return false;
+
+ return true;
+ }
+
+ public int hashCode() {
+ int result;
+ result = (id != null ? id.hashCode() : 0);
+ result = 31 * result + (name != null ? name.hashCode() : 0);
+ return result;
+ }
+}
Modified: trunk/src/model/org/jboss/blog/model/Feed.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Feed.java 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/model/org/jboss/blog/model/Feed.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -3,11 +3,11 @@
import org.hibernate.annotations.CollectionOfElements;
import org.hibernate.validator.Length;
import org.hibernate.validator.NotEmpty;
-import org.hibernate.validator.NotNull;
import org.hibernate.validator.Pattern;
import javax.persistence.*;
import java.util.Map;
+import java.util.List;
/**
* @author <a href="mailto:adam at warski.org">Adam Warski</a>
@@ -27,13 +27,22 @@
private String name;
@NotEmpty
- @Length(max = 64)
- private String displayName;
+ @Length(max = 512)
+ private String title;
- @OneToOne(cascade = CascadeType.REMOVE)
- @NotNull
- private Blog blog;
+ @Length(max = 256)
+ private String author;
+ @Length(max = 512)
+ @NotEmpty
+ private String link;
+
+ @ManyToMany(cascade = {CascadeType.REMOVE}, mappedBy = "feeds")
+ private List<Post> posts;
+
+ @Lob
+ private String description;
+
@CollectionOfElements
private Map<RemoteFeedType, String> templates;
@@ -65,22 +74,46 @@
this.name = name;
}
- public String getDisplayName() {
- return displayName;
+ public String getTitle() {
+ return title;
}
- public void setDisplayName(String displayName) {
- this.displayName = displayName;
+ public void setTitle(String title) {
+ this.title = title;
}
- public Blog getBlog() {
- return blog;
+ public String getAuthor() {
+ return author;
}
- public void setBlog(Blog blog) {
- this.blog = blog;
+ public void setAuthor(String author) {
+ this.author = author;
}
+ public String getLink() {
+ return link;
+ }
+
+ public void setLink(String link) {
+ this.link = link;
+ }
+
+ public List<Post> getPosts() {
+ return posts;
+ }
+
+ public void setPosts(List<Post> posts) {
+ this.posts = posts;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
public Map<RemoteFeedType, String> getTemplates() {
return templates;
}
Modified: trunk/src/model/org/jboss/blog/model/Post.java
===================================================================
--- trunk/src/model/org/jboss/blog/model/Post.java 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/src/model/org/jboss/blog/model/Post.java 2007-11-26 17:44:46 UTC (rev 139)
@@ -38,16 +38,12 @@
@NotEmpty
private String link;
- @Length(max = 512)
- @NotEmpty
- private String guid;
-
@Length(max = 256)
// TODO: @NotEmpty
private String author;
- @CollectionOfElements
- private List<String> categories;
+ @ManyToMany
+ private List<Category> categories;
@Temporal(value = TemporalType.TIMESTAMP)
@NotNull
@@ -57,9 +53,9 @@
@NotNull
private Date modified;
- @ManyToOne(fetch = FetchType.LAZY)
+ @ManyToMany
@NotNull
- private Blog blog;
+ private List<Feed> feeds;
public Integer getId() {
return id;
@@ -102,14 +98,6 @@
this.link = link;
}
- public String getGuid() {
- return guid;
- }
-
- public void setGuid(String guid) {
- this.guid = guid;
- }
-
public String getAuthor() {
return author;
}
@@ -118,11 +106,11 @@
this.author = author;
}
- public List<String> getCategories() {
+ public List<Category> getCategories() {
return categories;
}
- public void setCategories(List<String> categories) {
+ public void setCategories(List<Category> categories) {
this.categories = categories;
}
@@ -142,12 +130,12 @@
this.modified = modified;
}
- public Blog getBlog() {
- return blog;
+ public List<Feed> getFeeds() {
+ return feeds;
}
- public void setBlog(Blog blog) {
- this.blog = blog;
+ public void setFeeds(List<Feed> feeds) {
+ this.feeds = feeds;
}
public boolean equals(Object o) {
Modified: trunk/view/manage/feed_mod.xhtml
===================================================================
--- trunk/view/manage/feed_mod.xhtml 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/view/manage/feed_mod.xhtml 2007-11-26 17:44:46 UTC (rev 139)
@@ -23,21 +23,9 @@
</a:outputPanel>
</h:panelGroup>
- <h:outputLabel for="displayName"><span class="required">*</span> Display name:</h:outputLabel>
- <h:panelGroup>
- <h:inputText id="displayName" value="#{feedMod.feed.displayName}" required="true" size="32">
- <a:support event="onblur" reRender="displayNameMessage" ajaxSingle="true" bypassUpdates="true"/>
- <s:validate />
- </h:inputText>
-
- <a:outputPanel id="displayNameMessage">
- <h:message for="displayName" styleClass="error" />
- </a:outputPanel>
- </h:panelGroup>
-
<h:outputLabel for="title"><span class="required">*</span> Title:</h:outputLabel>
<h:panelGroup>
- <h:inputText id="title" value="#{feedMod.feed.blog.title}" required="true" size="32">
+ <h:inputText id="title" value="#{feedMod.feed.title}" required="true" size="32">
<a:support event="onblur" reRender="titleMessage" ajaxSingle="true" bypassUpdates="true"/>
<s:validate />
</h:inputText>
@@ -49,7 +37,7 @@
<h:outputLabel for="author"><span class="required">*</span> Author:</h:outputLabel>
<h:panelGroup>
- <h:inputText id="author" value="#{feedMod.feed.blog.author}" required="true" size="32">
+ <h:inputText id="author" value="#{feedMod.feed.author}" required="true" size="32">
<a:support event="onblur" reRender="authorMessage" ajaxSingle="true" bypassUpdates="true"/>
<s:validate />
</h:inputText>
@@ -61,7 +49,7 @@
<h:outputLabel for="description">Description:</h:outputLabel>
<h:panelGroup>
- <h:inputTextarea id="description" value="#{feedMod.feed.blog.description}" rows="4" cols="32">
+ <h:inputTextarea id="description" value="#{feedMod.feed.description}" rows="4" cols="32">
<a:support event="onblur" reRender="descriptionMessage" ajaxSingle="true" bypassUpdates="true"/>
<s:validate />
</h:inputTextarea>
@@ -73,7 +61,7 @@
<h:outputLabel for="link"><span class="required">*</span> Link to blog:</h:outputLabel>
<h:panelGroup>
- <h:inputText id="link" value="#{feedMod.feed.blog.link}" required="true" size="64">
+ <h:inputText id="link" value="#{feedMod.feed.link}" required="true" size="64">
<a:support event="onblur" reRender="linkMessage" ajaxSingle="true" bypassUpdates="true"/>
<s:validate />
</h:inputText>
@@ -135,11 +123,11 @@
<h3>Posts preview:</h3>
- <h:panelGroup rendered="#{feedMod.feed.blog.posts.size() == 0}">
+ <h:panelGroup rendered="#{feedMod.feed.posts.size() == 0}">
This feed doesn't have any posts. Unable to preview.
</h:panelGroup>
- <h:panelGroup rendered="#{feedMod.feed.blog.posts.size() > 0}">
- <h:dataTable value="#{feedMod.feed.blog.posts}" var="post" rows="1">
+ <h:panelGroup rendered="#{feedMod.feed.posts.size() > 0}">
+ <h:dataTable value="#{feedMod.feed.posts}" var="post" rows="1">
<h:column>
<h:panelGrid columns="2">
<h:outputText value="Title:" />
Modified: trunk/view/manage/index.xhtml
===================================================================
--- trunk/view/manage/index.xhtml 2007-11-26 13:31:35 UTC (rev 138)
+++ trunk/view/manage/index.xhtml 2007-11-26 17:44:46 UTC (rev 139)
@@ -24,6 +24,11 @@
<s:link view="#{feedTypes.getFeedType(feed.type).editPage}" value="Edit specific">
<f:param name="name" value="#{feed.name}" />
</s:link>
+ <br />
+ <s:link view="/manage/feed_delete.xhtml" action="#{feedMod.delete}" value="Delete"
+ onclick="if (!confirm('Are you sure you want to delete this feed?')) return false">
+ <f:param name="name" value="#{feed.name}" />
+ </s:link>
</p>
</ui:repeat>
</ui:define>
More information about the jboss-cvs-commits
mailing list