Weld SVN: r6473 - in examples/trunk/jsf/pastecode/src/main/webapp: style and 1 other directory.
by weld-commits@lists.jboss.org
Author: shane.bryzak(a)jboss.com
Date: 2010-06-16 22:24:11 -0400 (Wed, 16 Jun 2010)
New Revision: 6473
Modified:
examples/trunk/jsf/pastecode/src/main/webapp/img/pastecode.png
examples/trunk/jsf/pastecode/src/main/webapp/style/style.css
Log:
pimp the logo a little more
Modified: examples/trunk/jsf/pastecode/src/main/webapp/img/pastecode.png
===================================================================
(Binary files differ)
Modified: examples/trunk/jsf/pastecode/src/main/webapp/style/style.css
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/style/style.css 2010-06-17 01:58:20 UTC (rev 6472)
+++ examples/trunk/jsf/pastecode/src/main/webapp/style/style.css 2010-06-17 02:24:11 UTC (rev 6473)
@@ -155,7 +155,7 @@
}
div.recentPastesHeader {
- background-color: #bbbbbb;
+ background-color: #cccccc;
color: #000000;
font-weight: bold;
padding: 4px;
13 years, 10 months
Weld SVN: r6472 - in examples/trunk/jsf/pastecode/src/main/webapp: img and 1 other directories.
by weld-commits@lists.jboss.org
Author: shane.bryzak(a)jboss.com
Date: 2010-06-16 21:58:20 -0400 (Wed, 16 Jun 2010)
New Revision: 6472
Added:
examples/trunk/jsf/pastecode/src/main/webapp/img/submit.png
Modified:
examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml
examples/trunk/jsf/pastecode/src/main/webapp/style/style.css
Log:
completed main form style changes
Modified: examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml 2010-06-17 01:37:20 UTC (rev 6471)
+++ examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml 2010-06-17 01:58:20 UTC (rev 6472)
@@ -26,21 +26,23 @@
</div>
<div class="formRow">
- <h:outputLabel for="user" value="Name / title"/>
- <h:inputText id="user" maxlength="30" size="30" value="#{pasteWindow.codeFragment.user}"/>
- </div>
-
- <div class="formRow">
<h:outputLabel for="secured" value="Exposure"/>
<h:selectOneMenu id="exposure" value="#{pasteWindow.privateFragment}">
<f:selectItem itemValue="#{true}" itemLabel="Private"/>
<f:selectItem itemValue="#{false}" itemLabel="Public"/>
</h:selectOneMenu>
</div>
+
+ <div class="formRow">
+ <h:outputLabel for="user" value="Name / title"/>
+ <h:inputText id="user" maxlength="30" size="30" value="#{pasteWindow.codeFragment.user}"/>
+ </div>
<div class="formButtons">
- <h:commandButton action="#{pasteWindow.send}" id="send" value=" Send "/>
+ <h:commandButton action="#{pasteWindow.send}" id="send" image="img/submit.png"/>
</div>
+
+ <br style="clear:both"/>
</ui:define>
Added: examples/trunk/jsf/pastecode/src/main/webapp/img/submit.png
===================================================================
(Binary files differ)
Property changes on: examples/trunk/jsf/pastecode/src/main/webapp/img/submit.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: examples/trunk/jsf/pastecode/src/main/webapp/style/style.css
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/style/style.css 2010-06-17 01:37:20 UTC (rev 6471)
+++ examples/trunk/jsf/pastecode/src/main/webapp/style/style.css 2010-06-17 01:58:20 UTC (rev 6472)
@@ -75,6 +75,7 @@
div#main {
clear: both;
padding: 2px;
+ margin-left: 4px;
}
div#content {
@@ -97,17 +98,17 @@
margin: 8px 4px 8px 4px;
}
+/* General form styles */
+
.pastecode {
width: 98%;
height: 260px;
margin-left: 4px;
- background-color: #fcfcfc;
+ background-color: #fafafc;
+ border: 1px solid #cccccc;
overflow: auto;
- border: 1px solid #7f7f7f;
}
-/* General form styles */
-
div.formRow {
padding: 3px 4px 3px 2px;
clear: both;
@@ -120,11 +121,17 @@
}
div.formRow input[type='text'] {
- width: 220px;
+ width: 210px;
+ background-color: #fafafc;
+ border: 1px solid #cccccc;
+ padding: 4px;
}
-div.formRow input[type='text'].wide {
- width: 440px;
+div.formRow select {
+ width: 220px;
+ background-color: #fafafc;
+ border: 1px solid #cccccc;
+ padding: 4px;
}
div.formButtons {
13 years, 10 months
Weld SVN: r6471 - examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2010-06-16 21:37:20 -0400 (Wed, 16 Jun 2010)
New Revision: 6471
Modified:
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java
Log:
fix pagination ;-)
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java 2010-06-17 01:31:29 UTC (rev 6470)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java 2010-06-17 01:37:20 UTC (rev 6471)
@@ -207,6 +207,9 @@
criteria.where(predicates.toArray(new Predicate[0])).orderBy(builder.desc(root.get(CodeFragment_.datetime)));
Query q = entityManager.createQuery(criteria);
+
+ int totalRecords = q.getResultList().size();
+
q.setFirstResult(page * PAGE_SIZE);
q.setMaxResults(PAGE_SIZE);
@@ -214,8 +217,8 @@
List<CodeFragment> codes = q.getResultList();
paginator.setPage(page);
- paginator.setRecordsCount(codes.size());
- paginator.setPagesCount(codes.size() / PAGE_SIZE);
+ paginator.setRecordsCount(totalRecords);
+ paginator.setPagesCount(totalRecords / PAGE_SIZE);
return codes;
}
13 years, 10 months
Weld SVN: r6470 - in examples/trunk/jsf/pastecode/src/main/webapp: style and 1 other directory.
by weld-commits@lists.jboss.org
Author: shane.bryzak(a)jboss.com
Date: 2010-06-16 21:31:29 -0400 (Wed, 16 Jun 2010)
New Revision: 6470
Modified:
examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml
examples/trunk/jsf/pastecode/src/main/webapp/style/style.css
examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml
Log:
updated more content style
Modified: examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml 2010-06-17 01:13:53 UTC (rev 6469)
+++ examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml 2010-06-17 01:31:29 UTC (rev 6470)
@@ -13,36 +13,35 @@
</ui:define>
<ui:define name="mainarea">
- <div style="width: 100%; padding: 7px;">
+
+ <div class="contentHeader">Poste a new PasteCode</div>
- <h:panelGrid columns="3" style="width: 100%">
- <h:panelGroup>
- <h:outputLabel for="user" value="Your nick: "/>
- <h:inputText id="user" maxlength="30" size="30" value="#{pasteWindow.codeFragment.user}"/>
- </h:panelGroup>
-
- <h:panelGroup>
- <h:outputLabel for="language" value="Language: "/>
- <h:selectOneMenu id="language" value="#{pasteWindow.codeFragment.language}">
- <f:selectItems value="#{languages}" var="language" itemLabel="#{language.name}" itemValue="#{language}" />
- </h:selectOneMenu>
- </h:panelGroup>
- <h:panelGroup style="text-align:right;">
- <h:outputLabel for="secured" value="Private: "/>
- <h:selectBooleanCheckbox id="secured" value="#{pasteWindow.privateFragment}"/>
- </h:panelGroup>
- </h:panelGrid>
- <h:outputLabel for="text" value="Code: "/><h:message for="text" style="color: red" />
- <h:inputTextarea id="text" style="width: 98%" cols="17" rows="18" value="#{pasteWindow.codeFragment.text}"/>
-
- <h:outputLabel for="note" value="Note: (optional) "/>
- <h:inputTextarea style="width: 98%" cols="17" rows="4" id="note" value="#{pasteWindow.codeFragment.note}"/>
- <div style="width: 98%; text-align:right;">
- <h:outputLabel for="send" value="Paste code: "/>
- <h:commandButton action="#{pasteWindow.send}" id="send" value=" Send "/>
- </div>
+ <h:inputTextarea id="text" styleClass="pastecode" value="#{pasteWindow.codeFragment.text}"/>
+
+ <div class="formRow">
+ <h:outputLabel for="language" value="Syntax highlighting"/>
+ <h:selectOneMenu id="language" value="#{pasteWindow.codeFragment.language}">
+ <f:selectItems value="#{languages}" var="language" itemLabel="#{language.name}" itemValue="#{language}" />
+ </h:selectOneMenu>
+ </div>
+
+ <div class="formRow">
+ <h:outputLabel for="user" value="Name / title"/>
+ <h:inputText id="user" maxlength="30" size="30" value="#{pasteWindow.codeFragment.user}"/>
+ </div>
+
+ <div class="formRow">
+ <h:outputLabel for="secured" value="Exposure"/>
+ <h:selectOneMenu id="exposure" value="#{pasteWindow.privateFragment}">
+ <f:selectItem itemValue="#{true}" itemLabel="Private"/>
+ <f:selectItem itemValue="#{false}" itemLabel="Public"/>
+ </h:selectOneMenu>
+ </div>
+
+ <div class="formButtons">
+ <h:commandButton action="#{pasteWindow.send}" id="send" value=" Send "/>
+ </div>
- </div>
</ui:define>
<ui:define name="rightmenu">
Modified: examples/trunk/jsf/pastecode/src/main/webapp/style/style.css
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/style/style.css 2010-06-17 01:13:53 UTC (rev 6469)
+++ examples/trunk/jsf/pastecode/src/main/webapp/style/style.css 2010-06-17 01:31:29 UTC (rev 6470)
@@ -2,10 +2,12 @@
margin: 0px;
padding: 0px;
border-width: 0px;
- background-color: #cccccc;
+ background-color: #eeeeee;
font-family:trebuchet MS, Lucida Sans Unicode, Lucida Sans, Sans-Serif;
}
+/* Header styles */
+
div#header {
height:60px;
background: url(../img/header_bg.png) top left repeat-x;
@@ -36,7 +38,7 @@
float: left;
margin-left: 4px;
margin-right: 4px;
- padding-top: 18px;
+ padding-top: 19px;
height: 100%;
}
@@ -62,64 +64,80 @@
background: url(../img/poweredbyweld.png) top right no-repeat;
}
-table {
- border-width: 0px;
- margin: 0px;
- padding: 0px;
-}
-table tr td {
- margin: 0px;
- padding: 0px;
-}
-
div#topseparator {
height: 10px;
background-color:#33343d;
border-top: 1px solid #dfdfdf;
}
-div#bottomseparator {
- height: 20px;
- width: 100%;
- background-color:#8784C6;
+/* Main content styles */
+
+div#main {
+ clear: both;
+ padding: 2px;
}
-div#footer {
- width:100%;
- height:50px;
- background-color:#1E2580;
- color: #CCDFFF;
- vertical-align: top;
- text-align: center;
+div#content {
+ background-color: #ffffff;
+ border: 1px solid #cccccc;
+ padding: 4px;
+ margin-right: 260px;
}
-div#code {
- width: 99%;
- height: 400px;
+div#rightmenu {
+ float: right;
+ width: 240px;
+}
+
+div.contentHeader {
+ padding: 8px;
+ font-weight: bold;
+ background-color: #eeeeee;
+ border: 1px solid #c7c7c7;
+ margin: 8px 4px 8px 4px;
+}
+
+.pastecode {
+ width: 98%;
+ height: 260px;
+ margin-left: 4px;
+ background-color: #fcfcfc;
overflow: auto;
- border: 1px solid #7F7F7F;
+ border: 1px solid #7f7f7f;
}
-img#logo {
- width: 150px;
- height: 55px;
- border: 1px solid black;
+/* General form styles */
+
+div.formRow {
+ padding: 3px 4px 3px 2px;
+ clear: both;
}
-span#edgelink {
- border-width: 0px;
- margin:1px;
- background-color:#8784C6;
+div.formRow label {
+ float: left;
+ width: 220px;
+ padding: 2px 2px 2px 2px;
}
-span#normallink {
- border-width: 1px;
- margin-left:4px;
- margin-right:4px;
- background-color: #E9E9F8;
+div.formRow input[type='text'] {
+ width: 220px;
}
+div.formRow input[type='text'].wide {
+ width: 440px;
+}
+div.formButtons {
+ float: right;
+ padding: 4px 8px 16px 2px;
+}
+
+div.validationError {
+ margin-left: 120px;
+ font-weight: bold;
+ color: #ff0000;
+}
+
/** Recent pastes styles */
div.recentPastes {
Modified: examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml 2010-06-17 01:13:53 UTC (rev 6469)
+++ examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml 2010-06-17 01:31:29 UTC (rev 6470)
@@ -38,39 +38,20 @@
<div id="topseparator"></div>
-<div style="clear:both">
-<table width="100%" cellspacing="10" style="width:100%;">
- <tr valign="top">
- <!-- **************** MAIN AREA **************** -->
- <td width="100%">
- <table width="100%" cellpadding="10" cellspacing="0" bgcolor="#E9E9F8" bordercolor="#8784C6" border="1">
- <tr valign="top">
- <td bordercolor="#E9E9F8">
+<div id="main">
+
+ <div id="rightmenu">
+ <ui:insert name="rightmenu">
+ Menu right
+ </ui:insert>
+ </div>
+
+ <div id="content">
+ <ui:insert name="mainarea">
+ Main Area
+ </ui:insert>
+ </div>
- <ui:insert name="mainarea">
- Main Area
- </ui:insert>
-
- <br/> <br/> <br/>
- </td>
- </tr>
- </table>
- </td>
-
- <!-- **************** MENU RIGHT **************** -->
- <td>
- <table bgcolor="#E9E9F8">
- <tr valign="top">
- <td bordercolor="#E9E9F8" >
- <ui:insert name="rightmenu">
- Menu right
- </ui:insert>
- </td>
- </tr>
- </table>
- </td>
- </tr>
-</table>
</div>
</h:form>
13 years, 10 months
Weld SVN: r6469 - examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2010-06-16 21:13:53 -0400 (Wed, 16 Jun 2010)
New Revision: 6469
Modified:
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PopulateDatabaseBean.java
Log:
minor
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PopulateDatabaseBean.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PopulateDatabaseBean.java 2010-06-17 01:01:04 UTC (rev 6468)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PopulateDatabaseBean.java 2010-06-17 01:13:53 UTC (rev 6469)
@@ -61,7 +61,7 @@
private boolean populated;
// TODO @PostConstruct
- public void populate()
+ public synchronized void populate()
{
if (populated)
{
13 years, 10 months
Weld SVN: r6468 - in examples/trunk/jsf/pastecode: src/main/java/org/jboss/weld/examples/pastecode/jsf and 4 other directories.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2010-06-16 21:01:04 -0400 (Wed, 16 Jun 2010)
New Revision: 6468
Added:
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/jsf/TruncatingConverter.java
Modified:
examples/trunk/jsf/pastecode/pom.xml
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/History.java
examples/trunk/jsf/pastecode/src/main/resources/META-INF/persistence.xml
examples/trunk/jsf/pastecode/src/main/webapp/WEB-INF/faces-config.xml
examples/trunk/jsf/pastecode/src/main/webapp/history.xhtml
Log:
change search to use criteria, fix truncation
Modified: examples/trunk/jsf/pastecode/pom.xml
===================================================================
--- examples/trunk/jsf/pastecode/pom.xml 2010-06-17 00:09:39 UTC (rev 6467)
+++ examples/trunk/jsf/pastecode/pom.xml 2010-06-17 01:01:04 UTC (rev 6468)
@@ -51,12 +51,21 @@
</dependency>
<dependency>
- <groupId>javax.persistence</groupId>
- <artifactId>persistence-api</artifactId>
+ <groupId>org.hibernate.javax.persistence</groupId>
+ <artifactId>hibernate-jpa-2.0-api</artifactId>
+ <version>1.0.0.Final</version>
<scope>provided</scope>
</dependency>
<dependency>
+ <groupId>org.hibernate</groupId>
+ <artifactId>hibernate-jpamodelgen</artifactId>
+ <!-- TODO Get this into Weld Parent! -->
+ <version>1.0.0.Final</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<scope>provided</scope>
@@ -106,27 +115,47 @@
</configuration>
</plugin>
<plugin>
- <groupId>com.pyx4j</groupId>
- <artifactId>maven-junction-plugin</artifactId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <compilerArgument>-proc:none</compilerArgument>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.bsc.maven</groupId>
+ <artifactId>maven-processor-plugin</artifactId>
+ <version>1.3.5</version>
<executions>
<execution>
- <id>unlink</id>
- <phase>clean</phase>
+ <id>process</id>
<goals>
- <goal>unlink</goal>
+ <goal>process</goal>
</goals>
+ <phase>generate-sources</phase>
+ <configuration>
+ <!-- source output directory -->
+ <outputDirectory>target/metamodel</outputDirectory>
+ </configuration>
</execution>
</executions>
- <configuration>
- <links>
- <!-- link src/main/webapp -> war/ for IDEs -->
- <link>
- <dst>${basedir}/war</dst>
- <src>${basedir}/src/main/webapp</src>
- </link>
- </links>
- </configuration>
</plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>add-source</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>add-source</goal>
+ </goals>
+ <configuration>
+ <sources>
+ <source>target/metamodel</source>
+ </sources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
</plugins>
</build>
Added: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/jsf/TruncatingConverter.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/jsf/TruncatingConverter.java (rev 0)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/jsf/TruncatingConverter.java 2010-06-17 01:01:04 UTC (rev 6468)
@@ -0,0 +1,24 @@
+package org.jboss.weld.examples.pastecode.jsf;
+
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.convert.Converter;
+
+public class TruncatingConverter implements Converter
+{
+
+ // The max length of the snippet we show
+ private static int TRIMMED_TEXT_LEN = 100;
+
+ public Object getAsObject(FacesContext arg0, UIComponent arg1, String arg2)
+ {
+ return arg2;
+ }
+
+ public String getAsString(FacesContext arg0, UIComponent arg1, Object arg2)
+ {
+ String text = arg2.toString();
+ return text.length() < TRIMMED_TEXT_LEN ? text : text.substring(0, TRIMMED_TEXT_LEN) + "\n ...";
+ }
+
+}
Property changes on: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/jsf/TruncatingConverter.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java 2010-06-17 00:09:39 UTC (rev 6467)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java 2010-06-17 01:01:04 UTC (rev 6468)
@@ -22,7 +22,7 @@
package org.jboss.weld.examples.pastecode.session;
import java.security.NoSuchAlgorithmException;
-import java.text.SimpleDateFormat;
+import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
@@ -35,8 +35,13 @@
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
import org.jboss.weld.examples.pastecode.model.CodeFragment;
+import org.jboss.weld.examples.pastecode.model.CodeFragment_;
@Stateless
public class CodeFragmentManagerImpl implements CodeFragmentManager
@@ -160,44 +165,48 @@
return codes;
}
+
+ private static boolean isEmpty(String string)
+ {
+ return string == null || string.equals("");
+ }
- public List<CodeFragment> searchCodeFragments(CodeFragment code, int page, Paginator paginator)
+ public List<CodeFragment> searchCodeFragments(CodeFragment codeFragment, int page, Paginator paginator)
{
- StringBuilder sb = new StringBuilder().append("SELECT c FROM CodeFragment c WHERE c.hash=null");
- if (!code.getUser().trim().equals(""))
+ CriteriaBuilder builder = entityManager.getCriteriaBuilder();
+ CriteriaQuery<CodeFragment> criteria = builder.createQuery(CodeFragment.class);
+
+ Root<CodeFragment> root = criteria.from(CodeFragment.class);
+
+ List<Predicate> predicates = new ArrayList<Predicate>();
+
+ predicates.add(builder.isNull(root.get(CodeFragment_.hash)));
+
+ if (!isEmpty(codeFragment.getUser()))
{
- sb.append(" AND c.user = \'").append(code.getUser().trim().toLowerCase()).append("\'");
+ predicates.add( builder.equal(root.get(CodeFragment_.user), codeFragment.getUser().toLowerCase().trim()) );
}
- if (code.getLanguage() != null)
+ if (codeFragment.getLanguage() != null)
{
- sb.append(" AND c.language = \'").append(code.getLanguage().name()).append(("\'"));
+ predicates.add( builder.equal(root.get(CodeFragment_.language), codeFragment.getLanguage()) );
}
- if (!code.getNote().trim().equals(""))
+ if (!isEmpty(codeFragment.getNote()))
{
- sb.append(" AND c.note LIKE \'%").append(code.getNote().trim().toLowerCase()).append("%\'");
+ predicates.add( builder.like(root.get(CodeFragment_.note), codeFragment.getNote().toLowerCase()) );
}
- if (!code.getText().trim().equals(""))
+ if (!isEmpty(codeFragment.getText()))
{
- sb.append(" AND c.text LIKE \'%").append(code.getText().toLowerCase()).append("%\'");
+ predicates.add( builder.like(root.get(CodeFragment_.text), codeFragment.getText().toLowerCase()) );
}
- if (code.getDatetime() != null)
+ if (codeFragment.getDatetime() != null)
{
- SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");
- Date date2 = new Date();
- date2.setTime(code.getDatetime().getTime() + 24 * 60 * 60 * 1000); // +1
- // day
-
- String formattedDate1 = formatter.format(code.getDatetime());
- String formattedDate2 = formatter.format(date2);
-
- sb.append(" AND c.datetime between \'").append(formattedDate1).append("\' and \'").append(formattedDate2).append("\'");
+ predicates.add( builder.between(root.get(CodeFragment_.datetime), codeFragment.getDatetime(), new Date()) );
}
- sb.append(" ORDER BY datetime DESC");
- String queryString = sb.toString();
- Query q = entityManager.createQuery(queryString);
+ criteria.where(predicates.toArray(new Predicate[0])).orderBy(builder.desc(root.get(CodeFragment_.datetime)));
+ Query q = entityManager.createQuery(criteria);
q.setFirstResult(page * PAGE_SIZE);
q.setMaxResults(PAGE_SIZE);
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/History.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/History.java 2010-06-17 00:09:39 UTC (rev 6467)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/History.java 2010-06-17 01:01:04 UTC (rev 6468)
@@ -26,7 +26,6 @@
import javax.ejb.Stateful;
import javax.enterprise.context.SessionScoped;
-import javax.enterprise.inject.Produces;
import javax.inject.Inject;
import javax.inject.Named;
@@ -43,9 +42,6 @@
{
private static final long serialVersionUID = 20L;
-
- // The max length of the snippet we show
- private static int TRIMMED_TEXT_LEN = 120;
@Inject
private CodeFragmentManager codeFragmentManager;
@@ -69,7 +65,6 @@
return this.codes;
}
- @Produces @Named
public CodeFragment getCodeFragmentPrototype()
{
return codeFragmentPrototype;
@@ -88,15 +83,9 @@
this.paginator = new Paginator();
this.codes = null;
- // Perform a seach
+ // Perform a search
this.codes = codeFragmentManager.searchCodeFragments(this.codeFragmentPrototype, this.page, this.paginator);
-
- for (int i = 0; i != this.codes.size(); i++)
- {
- String s = this.codes.get(i).getText();
- this.codes.get(i).setText(s.substring(0, s.length() > TRIMMED_TEXT_LEN ? TRIMMED_TEXT_LEN : s.length()) + " .....");
- }
return "history";
}
Modified: examples/trunk/jsf/pastecode/src/main/resources/META-INF/persistence.xml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/resources/META-INF/persistence.xml 2010-06-17 00:09:39 UTC (rev 6467)
+++ examples/trunk/jsf/pastecode/src/main/resources/META-INF/persistence.xml 2010-06-17 01:01:04 UTC (rev 6468)
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
- version="1.0">
+ xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
+ version="2.0">
<persistence-unit name="pastecodeDatabase">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<jta-data-source>java:/pastecodeDatasource</jta-data-source>
Modified: examples/trunk/jsf/pastecode/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/WEB-INF/faces-config.xml 2010-06-17 00:09:39 UTC (rev 6467)
+++ examples/trunk/jsf/pastecode/src/main/webapp/WEB-INF/faces-config.xml 2010-06-17 01:01:04 UTC (rev 6468)
@@ -26,5 +26,10 @@
<converter-for-class>org.jboss.weld.examples.pastecode.model.Language</converter-for-class>
<converter-class>org.jboss.weld.examples.pastecode.jsf.LanguageConverter</converter-class>
</converter>
+
+ <converter>
+ <converter-id>truncatingConverter</converter-id>
+ <converter-class>org.jboss.weld.examples.pastecode.jsf.TruncatingConverter</converter-class>
+ </converter>
</faces-config>
Modified: examples/trunk/jsf/pastecode/src/main/webapp/history.xhtml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/history.xhtml 2010-06-17 00:09:39 UTC (rev 6467)
+++ examples/trunk/jsf/pastecode/src/main/webapp/history.xhtml 2010-06-17 01:01:04 UTC (rev 6468)
@@ -45,7 +45,11 @@
<h:outputText value="Code (truncated): " />
<div
style="height: 100px; width: 99%; border: 1px solid #7F7F7F; overflow: auto; padding: 1px;">
- <pre>#{codeFragment.text}</pre></div>
+ <pre>
+ <h:outputText value="#{codeFragment.text}">
+ <f:converter converterId="truncatingConverter"/>
+ </h:outputText>
+ </pre></div>
<br />
<br />
</h:column>
@@ -67,25 +71,27 @@
cellpadding="0" cellspacing="0" columns="2" width="100%">
<h:outputLabel for="user" value="User:"></h:outputLabel>
<h:inputText id="user" maxlength="30" style="width:97%;"
- value="#{codeFragmentPrototype.user}" />
+ value="#{history.codeFragmentPrototype.user}" />
<h:outputLabel for="language" value="Language:" />
- <h:selectOneMenu id="language" value="#{codeFragmentPrototype.language}">
+ <h:selectOneMenu id="language" value="#{history.codeFragmentPrototype.language}">
<f:selectItem itemLabel="Any" itemValue="" />
<f:selectItems value="#{languages}" var="language"
itemLabel="#{language.name}" itemValue="#{language}" />
</h:selectOneMenu>
<h:outputLabel for="note" value="Note:"></h:outputLabel>
<h:inputText id="note" maxlength="30" style="width:97%;"
- value="#{codeFragmentPrototype.note}" />
+ value="#{history.codeFragmentPrototype.note}" />
<h:outputLabel for="pasteDate" value="Date: " />
- <h:inputText value="#{codeFragmentPrototype.datetime}" id="pasteDate"
+ <h:inputText value="#{history.codeFragmentPrototype.datetime}" id="pasteDate"
style="width:97%;" alt="yyyy-mm-dd" title="yyyy-mm-dd"
converterMessage="Enter date formatted as yyyy-mm-dd !">
<f:convertDateTime type="date" pattern="yyyy-MM-dd" />
</h:inputText>
<h:outputLabel for="code" value="Code:" style="width:100%;"></h:outputLabel>
<h:inputTextarea id="code" maxlength="30" rows="2" style="width:97%;"
- value="#{codeFragmentPrototype.text}" />
+ value="#{history.codeFragmentPrototype.text}">
+ <f:validateBean disabled="true" />
+ </h:inputTextarea>
</h:panelGrid>
<div style="width: 100%; text-align: right;"><h:commandButton
value="Search" action="#{history.newSearch}" /></div>
13 years, 10 months
Weld SVN: r6467 - in examples/trunk/jsf/pastecode/src/main/webapp: img and 1 other directories.
by weld-commits@lists.jboss.org
Author: shane.bryzak(a)jboss.com
Date: 2010-06-16 20:09:39 -0400 (Wed, 16 Jun 2010)
New Revision: 6467
Added:
examples/trunk/jsf/pastecode/src/main/webapp/img/divider.png
examples/trunk/jsf/pastecode/src/main/webapp/img/header_bg.png
examples/trunk/jsf/pastecode/src/main/webapp/img/pastecode.png
examples/trunk/jsf/pastecode/src/main/webapp/img/poweredbyweld.png
Removed:
examples/trunk/jsf/pastecode/src/main/webapp/img/small.png
Modified:
examples/trunk/jsf/pastecode/src/main/webapp/style/style.css
examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml
Log:
fixed header style
Added: examples/trunk/jsf/pastecode/src/main/webapp/img/divider.png
===================================================================
(Binary files differ)
Property changes on: examples/trunk/jsf/pastecode/src/main/webapp/img/divider.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: examples/trunk/jsf/pastecode/src/main/webapp/img/header_bg.png
===================================================================
(Binary files differ)
Property changes on: examples/trunk/jsf/pastecode/src/main/webapp/img/header_bg.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: examples/trunk/jsf/pastecode/src/main/webapp/img/pastecode.png
===================================================================
(Binary files differ)
Property changes on: examples/trunk/jsf/pastecode/src/main/webapp/img/pastecode.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: examples/trunk/jsf/pastecode/src/main/webapp/img/poweredbyweld.png
===================================================================
(Binary files differ)
Property changes on: examples/trunk/jsf/pastecode/src/main/webapp/img/poweredbyweld.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Deleted: examples/trunk/jsf/pastecode/src/main/webapp/img/small.png
===================================================================
(Binary files differ)
Modified: examples/trunk/jsf/pastecode/src/main/webapp/style/style.css
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/style/style.css 2010-06-16 22:07:44 UTC (rev 6466)
+++ examples/trunk/jsf/pastecode/src/main/webapp/style/style.css 2010-06-17 00:09:39 UTC (rev 6467)
@@ -6,6 +6,62 @@
font-family:trebuchet MS, Lucida Sans Unicode, Lucida Sans, Sans-Serif;
}
+div#header {
+ height:60px;
+ background: url(../img/header_bg.png) top left repeat-x;
+ margin: 0px;
+ padding: 0px;
+}
+
+div#headerImage {
+ margin-top: 8px;
+ margin-left: 6px;
+ margin-right: 24px;
+ width: 223px;
+ height: 42px;
+ float: left;
+ background: url(../img/pastecode.png) top left no-repeat;
+}
+
+div.divider {
+ float: left;
+ width: 2px;
+ height: 60px;
+ margin-left: 4px;
+ margin-right: 4px;
+ background: url(../img/divider.png) top left no-repeat;
+}
+
+div.menuitem {
+ float: left;
+ margin-left: 4px;
+ margin-right: 4px;
+ padding-top: 18px;
+ height: 100%;
+}
+
+div.menuitem a, div.menuitem a:visited {
+ margin-left: 8px;
+ margin-right: 8px;
+ color: #ffffff;
+ text-decoration: none;
+}
+
+div.menuitem a:hover {
+ margin-left: 8px;
+ margin-right: 8px;
+ color: #f6ae00;
+}
+
+div#poweredby {
+ margin-top: 4px;
+ margin-right: 4px;
+ float: right;
+ width: 110px;
+ height: 51px;
+ background: url(../img/poweredbyweld.png) top right no-repeat;
+}
+
table {
border-width: 0px;
margin: 0px;
@@ -17,33 +73,17 @@
}
div#topseparator {
- border-width: 0px;
- height: 20px;
- width: 100%;
- background-color:#8784C6;
+ height: 10px;
+ background-color:#33343d;
+ border-top: 1px solid #dfdfdf;
}
-div#main {
- width: 100%;
-}
-
div#bottomseparator {
height: 20px;
width: 100%;
background-color:#8784C6;
}
-div#header {
- width:100%;
- height:60px;
- background-color:#8784C6;
- background-image: url('../img/small.png');
- background-repeat: repeat-x;
- vertical-align: top;
- margin: 0px;
- padding: 0px;
-}
-
div#footer {
width:100%;
height:50px;
@@ -53,16 +93,6 @@
text-align: center;
}
-span#menuitem {
- margin: 2px;
- padding-left: 7px;
- padding-right: 7px;
- padding-top: 2px;
- padding-bottom: 2px;
- border: 1px solid black;
- background-color:#E9E9F8;
-}
-
div#code {
width: 99%;
height: 400px;
Modified: examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml 2010-06-16 22:07:44 UTC (rev 6466)
+++ examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml 2010-06-17 00:09:39 UTC (rev 6467)
@@ -23,30 +23,22 @@
<ui:insert name="myscripts"/>
<div id="header">
-
- <table height="100%" >
- <tr valign="middle">
- <td>
- <div style="padding-left:20px;padding-right:20px;border-width:0px;"><h2>PasteCode</h2></div>
- <!-- <img id="logo" src="img/logotransparent2.png" alt="Obrazek" width="230" height="65" style="border-width:0px;"/> -->
-
- </td>
- <td>
-
- </td>
- <td>
- <a href="home.jsf" style="text-decoration:none;"><span id="menuitem">New</span></a>
- <a href="history.jsf" style="text-decoration:none;"><span id="menuitem">History</span></a>
- <a href="help.jsf" style="text-decoration:none;"><span id="menuitem">Help</span></a>
- </td>
- </tr>
- </table>
-</div>
+ <div id="headerImage"></div>
+
+ <div class="divider"></div>
+ <div class="menuitem"><a href="home.jsf">new</a></div>
+ <div class="divider"></div>
+ <div class="menuitem"><a href="history.jsf">history</a></div>
+ <div class="divider"></div>
+ <div class="menuitem"><a href="help.jsf">help</a></div>
+ <div class="divider"></div>
+
+ <div id="poweredby"></div>
+</div>
-<div id="topseparator">
-</div>
+<div id="topseparator"></div>
-<div id="main">
+<div style="clear:both">
<table width="100%" cellspacing="10" style="width:100%;">
<tr valign="top">
<!-- **************** MAIN AREA **************** -->
@@ -81,15 +73,6 @@
</table>
</div>
-
-<div id="bottomseparator"/>
-
-<div id="footer">
- <ui:insert name="footer">
- Powered by Weld, the Reference Implementation for Contexts and Dependency Injection for Java EE
- </ui:insert>
-</div>
-
</h:form>
</body>
</f:view>
13 years, 10 months
Weld SVN: r6466 - examples/trunk/jsf/pastecode/src/main/webapp.
by weld-commits@lists.jboss.org
Author: shane.bryzak(a)jboss.com
Date: 2010-06-16 18:07:44 -0400 (Wed, 16 Jun 2010)
New Revision: 6466
Added:
examples/trunk/jsf/pastecode/src/main/webapp/favicon.ico
Modified:
examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml
Log:
add favicon
Added: examples/trunk/jsf/pastecode/src/main/webapp/favicon.ico
===================================================================
(Binary files differ)
Property changes on: examples/trunk/jsf/pastecode/src/main/webapp/favicon.ico
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml 2010-06-16 21:30:13 UTC (rev 6465)
+++ examples/trunk/jsf/pastecode/src/main/webapp/template.xhtml 2010-06-16 22:07:44 UTC (rev 6466)
@@ -11,7 +11,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>PasteCode</title>
<link rel="stylesheet" href="style/style.css" type="text/css" media="screen" />
-
+ <link REL="SHORTCUT ICON" HREF="favicon.ico"/>
<ui:insert name="themes"/>
<ui:insert name="head"/>
13 years, 10 months
Weld SVN: r6465 - in examples/trunk/jsf/pastecode/src/main: java/org/jboss/weld/examples/pastecode/session and 1 other directories.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2010-06-16 17:30:13 -0400 (Wed, 16 Jun 2010)
New Revision: 6465
Added:
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/LogManager.java
Modified:
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/servlets/DownloadServlet.java
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PasteWindow.java
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PopulateDatabaseBean.java
examples/trunk/jsf/pastecode/src/main/webapp/WEB-INF/faces-config.xml
Log:
minor tweaks to nav
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/servlets/DownloadServlet.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/servlets/DownloadServlet.java 2010-06-16 21:03:34 UTC (rev 6464)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/servlets/DownloadServlet.java 2010-06-16 21:30:13 UTC (rev 6465)
@@ -22,6 +22,8 @@
package org.jboss.weld.examples.pastecode.servlets;
import java.io.IOException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import javax.inject.Inject;
import javax.servlet.ServletException;
@@ -38,6 +40,9 @@
public class DownloadServlet extends HttpServlet
{
private static final long serialVersionUID = 1L;
+
+ @Inject
+ private Logger log;
@Inject
private CodeFragmentManager codeFragmentManager;
@@ -61,7 +66,7 @@
}
catch (Exception e)
{
- e.printStackTrace();
+ log.log(Level.WARNING, "Error processing file for download", e);
}
finally
{
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java 2010-06-16 21:03:34 UTC (rev 6464)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java 2010-06-16 21:30:13 UTC (rev 6465)
@@ -26,6 +26,7 @@
import java.util.Calendar;
import java.util.Date;
import java.util.List;
+import java.util.logging.Logger;
import javax.ejb.Stateless;
import javax.enterprise.inject.Produces;
@@ -40,6 +41,8 @@
@Stateless
public class CodeFragmentManagerImpl implements CodeFragmentManager
{
+
+ @Inject Logger log;
// The number of code fragments to return in our recentCodeFragments query
private static int MAX_RECENT_FRAGMENTS = 7;
@@ -74,6 +77,7 @@
String hashValue = hashComputer.getHashValue(code);
code.setHash(hashValue);
entityManager.persist(code);
+ log.info("Added private pastecode: " + hashValue);
return hashValue;
}
catch (NoSuchAlgorithmException e)
@@ -86,6 +90,9 @@
else
{
entityManager.persist(code);
+ // Make sure we have the latest version (with the generated id!)
+ entityManager.refresh(code);
+ log.info("Added pastecode: " + code.getId());
return new Integer(code.getId()).toString();
}
}
Added: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/LogManager.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/LogManager.java (rev 0)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/LogManager.java 2010-06-16 21:30:13 UTC (rev 6465)
@@ -0,0 +1,18 @@
+package org.jboss.weld.examples.pastecode.session;
+
+import java.util.logging.Logger;
+
+import javax.enterprise.inject.Produces;
+import javax.enterprise.inject.spi.InjectionPoint;
+
+public class LogManager
+{
+
+ @Produces
+ public Logger getLogger(InjectionPoint ip)
+ {
+ String category = ip.getMember().getDeclaringClass().getName();
+ return Logger.getLogger(category);
+ }
+
+}
Property changes on: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/LogManager.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Name: svn:eol-style
+ native
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PasteWindow.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PasteWindow.java 2010-06-16 21:03:34 UTC (rev 6464)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PasteWindow.java 2010-06-16 21:30:13 UTC (rev 6465)
@@ -54,7 +54,7 @@
// The send method is called when we hit the Send button
public String send()
{
- codeFragmentManager.addCodeFragment(codeFragment, privateFragment);
+ codeFragmentId = codeFragmentManager.addCodeFragment(codeFragment, privateFragment);
return "success";
}
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PopulateDatabaseBean.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PopulateDatabaseBean.java 2010-06-16 21:03:34 UTC (rev 6464)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/PopulateDatabaseBean.java 2010-06-16 21:30:13 UTC (rev 6465)
@@ -27,6 +27,8 @@
import java.io.InputStreamReader;
import java.text.SimpleDateFormat;
import java.util.StringTokenizer;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
@@ -49,6 +51,8 @@
public class PopulateDatabaseBean
{
+ @Inject Logger log;
+
private static final String DATA_FILE_NAME = "data.sql";
@Inject
@@ -89,9 +93,10 @@
}
catch (Exception e)
{
- System.err.println("Unable to read all records from " + DATA_FILE_NAME + " file");
+ log.log(Level.WARNING, "Unable to read all records from " + DATA_FILE_NAME + " file");
}
+ log.info("Successfully imported data!");
populated = true;
}
Modified: examples/trunk/jsf/pastecode/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/WEB-INF/faces-config.xml 2010-06-16 21:03:34 UTC (rev 6464)
+++ examples/trunk/jsf/pastecode/src/main/webapp/WEB-INF/faces-config.xml 2010-06-16 21:30:13 UTC (rev 6465)
@@ -8,7 +8,7 @@
<navigation-rule>
<from-view-id>/home.xhtml</from-view-id>
<navigation-case>
- <from-action>#{pasteWindow.send}</from-action>
+ <from-outcome>success</from-outcome>
<to-view-id>/#{pasteWindow.codeFragmentId}</to-view-id>
<redirect />
</navigation-case>
13 years, 10 months
Weld SVN: r6464 - in examples/trunk/jsf/pastecode: src/main/java/org/jboss/weld/examples/pastecode/model and 2 other directories.
by weld-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2010-06-16 17:03:34 -0400 (Wed, 16 Jun 2010)
New Revision: 6464
Modified:
examples/trunk/jsf/pastecode/pom.xml
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/model/CodeFragment.java
examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java
examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml
Log:
add hibernate validator
Modified: examples/trunk/jsf/pastecode/pom.xml
===================================================================
--- examples/trunk/jsf/pastecode/pom.xml 2010-06-16 20:30:44 UTC (rev 6463)
+++ examples/trunk/jsf/pastecode/pom.xml 2010-06-16 21:03:34 UTC (rev 6464)
@@ -57,6 +57,12 @@
</dependency>
<dependency>
+ <groupId>javax.validation</groupId>
+ <artifactId>validation-api</artifactId>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
<groupId>org.jboss.ejb3</groupId>
<artifactId>jboss-ejb3-api</artifactId>
<scope>provided</scope>
@@ -95,7 +101,8 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
- <warSourceExcludes>WEB-INF/classes/**,WEB-INF/lib/**</warSourceExcludes>
+ <warSourceExcludes>WEB-INF/classes/**,WEB-INF/lib/**
+ </warSourceExcludes>
</configuration>
</plugin>
<plugin>
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/model/CodeFragment.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/model/CodeFragment.java 2010-06-16 20:30:44 UTC (rev 6463)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/model/CodeFragment.java 2010-06-16 21:03:34 UTC (rev 6464)
@@ -38,6 +38,7 @@
import javax.persistence.OneToMany;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
+import javax.validation.constraints.Size;
/**
* The entity class for the pasted code "fragment". This is the main entity
@@ -69,6 +70,7 @@
private String note;
@Lob
+ @Size(min=1, message="Must enter some text!")
private String text;
private String user;
@@ -78,13 +80,6 @@
@OneToMany(mappedBy = "codeFragment", cascade = CascadeType.REMOVE)
List<AccessLog> largeCodeFragmentAccessLog;
- public CodeFragment()
- {
- this.note = "";
- this.text = "";
- this.user = "";
- }
-
public int getId()
{
return id;
Modified: examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java
===================================================================
--- examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java 2010-06-16 20:30:44 UTC (rev 6463)
+++ examples/trunk/jsf/pastecode/src/main/java/org/jboss/weld/examples/pastecode/session/CodeFragmentManagerImpl.java 2010-06-16 21:03:34 UTC (rev 6464)
@@ -47,7 +47,7 @@
// The number of code fragments to display per page
private static int PAGE_SIZE = 2;
- @PersistenceContext(unitName = "pastecodeDatabase")
+ @PersistenceContext
private EntityManager entityManager;
@Inject
Modified: examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml
===================================================================
--- examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml 2010-06-16 20:30:44 UTC (rev 6463)
+++ examples/trunk/jsf/pastecode/src/main/webapp/home.xhtml 2010-06-16 21:03:34 UTC (rev 6464)
@@ -32,7 +32,7 @@
<h:selectBooleanCheckbox id="secured" value="#{pasteWindow.privateFragment}"/>
</h:panelGroup>
</h:panelGrid>
- <h:outputLabel for="text" value="Code: "/>
+ <h:outputLabel for="text" value="Code: "/><h:message for="text" style="color: red" />
<h:inputTextarea id="text" style="width: 98%" cols="17" rows="18" value="#{pasteWindow.codeFragment.text}"/>
<h:outputLabel for="note" value="Note: (optional) "/>
13 years, 10 months