[jboss-cvs] JBossBlog SVN: r172 - in trunk: lib and 6 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Jan 16 04:45:50 EST 2008


Author: adamw
Date: 2008-01-16 04:45:50 -0500 (Wed, 16 Jan 2008)
New Revision: 172

Added:
   trunk/lib/htmlcleaner1_6.jar
   trunk/src/test/org/jboss/blog/tools/FixHtmlTest.java
Modified:
   trunk/blog.iml
   trunk/build.xml
   trunk/resources/META-INF/application.xml
   trunk/src/action/org/jboss/blog/session/merge/MergeServiceBean.java
   trunk/src/action/org/jboss/blog/session/view/FeedViewBean.java
   trunk/src/test/org/jboss/blog/tools/StripHtmlTest.java
   trunk/src/tools/org/jboss/blog/tools/StringTools.java
   trunk/view/manage/index.xhtml
Log:


Modified: trunk/blog.iml
===================================================================
--- trunk/blog.iml	2008-01-14 19:06:51 UTC (rev 171)
+++ trunk/blog.iml	2008-01-16 09:45:50 UTC (rev 172)
@@ -148,6 +148,15 @@
         <SOURCES />
       </library>
     </orderEntry>
+    <orderEntry type="module-library">
+      <library>
+        <CLASSES>
+          <root url="jar://$MODULE_DIR$/lib/htmlcleaner1_6.jar!/" />
+        </CLASSES>
+        <JAVADOC />
+        <SOURCES />
+      </library>
+    </orderEntry>
     <orderEntryProperties />
   </component>
 </module>

Modified: trunk/build.xml
===================================================================
--- trunk/build.xml	2008-01-14 19:06:51 UTC (rev 171)
+++ trunk/build.xml	2008-01-16 09:45:50 UTC (rev 172)
@@ -172,12 +172,10 @@
                 <include name="lib/mvel*.jar"/>
                 <include name="lib/richfaces-api*.jar" />
                 <include name="lib/rome*.jar" />
-                <include name="lib/jdom*.jar" />
-                <include name="lib/jericho-html-*.jar" />
 
-                <!-- TODO <include name="lib/lucene-core.jar" />
+                <include name="lib/lucene-core.jar" />
                 <include name="lib/hibernate-search.jar" />
-                <include name="lib/hibernate-commons-annotations.jar" />-->
+                <include name="lib/hibernate-commons-annotations.jar" />
 
                 <!-- moved from the war goal -->
                 <include name="lib/richfaces-impl*.jar" />
@@ -245,6 +243,14 @@
                 <include name="${jar.api.name}" />
             </fileset>
         </copy>
+
+        <copy todir="${deploy.lib.dir}">
+            <fileset dir="${basedir}/lib">
+                <include name="jdom*.jar" />
+                <include name="jericho-html-*.jar" />
+                <include name="htmlcleaner*.jar" />
+            </fileset>
+        </copy>
     </target>
 
     <target name="unexplode" description="Undeploy the exploded archive">

Added: trunk/lib/htmlcleaner1_6.jar
===================================================================
(Binary files differ)


Property changes on: trunk/lib/htmlcleaner1_6.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: trunk/resources/META-INF/application.xml
===================================================================
--- trunk/resources/META-INF/application.xml	2008-01-14 19:06:51 UTC (rev 171)
+++ trunk/resources/META-INF/application.xml	2008-01-16 09:45:50 UTC (rev 172)
@@ -11,10 +11,6 @@
        <ejb>jboss-seam.jar</ejb>
    </module>
 
-   <!--module>
-      <ejb>blog.jar</ejb>
-   </module-->
-
    <module>
       <ejb>blog-impl.jar</ejb>
    </module>

Modified: trunk/src/action/org/jboss/blog/session/merge/MergeServiceBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/merge/MergeServiceBean.java	2008-01-14 19:06:51 UTC (rev 171)
+++ trunk/src/action/org/jboss/blog/session/merge/MergeServiceBean.java	2008-01-16 09:45:50 UTC (rev 172)
@@ -5,6 +5,7 @@
 import org.jboss.blog.model.Enclosure;
 import org.jboss.blog.service.FeedsService;
 import org.jboss.blog.tools.GeneralTools;
+import org.jboss.blog.tools.StringTools;
 import org.jboss.seam.ScopeType;
 import org.jboss.seam.annotations.*;
 import org.jboss.seam.log.Log;
@@ -34,6 +35,8 @@
     public void savePost(Feed feed, Post post) {
         post.setTitleAsId(titleAsIdService.generateTitleAsId(post.getTitle()));
 
+        post.setContent(StringTools.fixHtml(post.getContent()));
+
         log.debug("Saving post, feed: #0, post title: #1, post titleAsId: #2, published: #3.",
                 feed.getName(), post.getTitle(), post.getTitleAsId(), post.getPublished());
         

Modified: trunk/src/action/org/jboss/blog/session/view/FeedViewBean.java
===================================================================
--- trunk/src/action/org/jboss/blog/session/view/FeedViewBean.java	2008-01-14 19:06:51 UTC (rev 171)
+++ trunk/src/action/org/jboss/blog/session/view/FeedViewBean.java	2008-01-16 09:45:50 UTC (rev 172)
@@ -3,13 +3,17 @@
 import org.jboss.blog.model.feed.Feed;
 import org.jboss.blog.model.Post;
 import org.jboss.blog.service.FeedsService;
+import org.jboss.blog.tools.StringTools;
 import org.jboss.seam.ScopeType;
 import org.jboss.seam.annotations.In;
 import org.jboss.seam.annotations.Name;
 import org.jboss.seam.annotations.Scope;
+import org.htmlcleaner.HtmlCleaner;
 
 import java.util.List;
 import java.io.Serializable;
+import java.io.IOException;
+import java.lang.reflect.Method;
 
 /**
  * @author <a href="mailto:adam at warski.org">Adam Warski</a>
@@ -64,4 +68,17 @@
     public int getNextFrom() {
         return from + feed.getMaxPostsOnPage();
     }
+
+    /**
+     * TODO
+     * Remove in the future!
+     * @Deprecated
+     */
+    public void fixHtml() {
+        for (Feed feed : feedsService.getAllFeeds()) {
+            for (Post post : feed.getPosts()) {
+                post.setContent(StringTools.fixHtml(post.getContent()));
+            }
+        }
+    }
 }

Added: trunk/src/test/org/jboss/blog/tools/FixHtmlTest.java
===================================================================
--- trunk/src/test/org/jboss/blog/tools/FixHtmlTest.java	                        (rev 0)
+++ trunk/src/test/org/jboss/blog/tools/FixHtmlTest.java	2008-01-16 09:45:50 UTC (rev 172)
@@ -0,0 +1,26 @@
+package org.jboss.blog.tools;
+
+import org.testng.annotations.DataProvider;
+import org.testng.annotations.Test;
+
+/**
+ * @author <a href="mailto:adam at warski.org">Adam Warski</a>
+ */
+public class FixHtmlTest {
+    @DataProvider(name = "texts")
+    public Object[][] getData() {
+        return new Object[][] {
+                { "<p>Some text.</p>", "<div><p>Some text.</p>\n</div>" },
+                { "<p><i>Some text.</i></p>", "<div><p><i>Some text.</i>\n</p>\n</div>" },
+                { "Some text.", "<div>Some text.</div>" },
+                { "<p>Some text.", "<div><p>Some text.</p>\n</div>" },
+                { "Some text.</p>", "<div>Some text.</div>" }
+        };
+    }
+
+    @Test(dataProvider = "texts")
+    public void test(String original, String fixed) {
+        System.out.println(StringTools.fixHtml(original));
+        assert fixed.equals(StringTools.fixHtml(original));
+    }
+}

Modified: trunk/src/test/org/jboss/blog/tools/StripHtmlTest.java
===================================================================
--- trunk/src/test/org/jboss/blog/tools/StripHtmlTest.java	2008-01-14 19:06:51 UTC (rev 171)
+++ trunk/src/test/org/jboss/blog/tools/StripHtmlTest.java	2008-01-16 09:45:50 UTC (rev 172)
@@ -20,7 +20,6 @@
 
     @Test(dataProvider = "texts")
     public void test(String original, String stripped) {
-        System.out.println(StringTools.stripHtml(original));
         assert stripped.equals(StringTools.stripHtml(original));
     }
 }

Modified: trunk/src/tools/org/jboss/blog/tools/StringTools.java
===================================================================
--- trunk/src/tools/org/jboss/blog/tools/StringTools.java	2008-01-14 19:06:51 UTC (rev 171)
+++ trunk/src/tools/org/jboss/blog/tools/StringTools.java	2008-01-16 09:45:50 UTC (rev 172)
@@ -1,7 +1,10 @@
 package org.jboss.blog.tools;
 
 import au.id.jericho.lib.html.Source;
+import org.htmlcleaner.HtmlCleaner;
 
+import java.io.IOException;
+
 /**
  * @author <a href="mailto:adam at warski.org">Adam Warski</a>
  */
@@ -29,4 +32,16 @@
 
         return source.getTextExtractor().toString();
     }
+
+    public static String fixHtml(String html) {
+        HtmlCleaner cleaner = new HtmlCleaner("<div>" + html + "</div>");
+        try {
+            cleaner.setOmitHtmlEnvelope(true);
+            cleaner.setOmitXmlDeclaration(true);
+            cleaner.clean();
+            return cleaner.getXmlAsString().trim();
+        } catch (IOException e) {
+            return html;
+        }
+    }
 }

Modified: trunk/view/manage/index.xhtml
===================================================================
--- trunk/view/manage/index.xhtml	2008-01-14 19:06:51 UTC (rev 171)
+++ trunk/view/manage/index.xhtml	2008-01-16 09:45:50 UTC (rev 172)
@@ -14,7 +14,9 @@
 
         <s:link value="Add new feed" view="/manage/add.xhtml" /> <br /> <br />
 
-        <s:link value="Re-index posts (for search)" action="#{postSearch.reindex}" />
+        <s:link value="Re-index posts (for search)" action="#{postSearch.reindex}" /> <br /> <br />
+
+        <s:link value="Temporary: fix html in all posts" action="#{feedView.fixHtml}" />
         
         <h3>Current feeds:</h3>
 




More information about the jboss-cvs-commits mailing list