Seam SVN: r7254 - trunk/ui/src/main/java/org/jboss/seam/ui/component.
by seam-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2008-01-28 08:40:00 -0500 (Mon, 28 Jan 2008)
New Revision: 7254
Modified:
trunk/ui/src/main/java/org/jboss/seam/ui/component/UIAction.java
Log:
ws
Modified: trunk/ui/src/main/java/org/jboss/seam/ui/component/UIAction.java
===================================================================
--- trunk/ui/src/main/java/org/jboss/seam/ui/component/UIAction.java 2008-01-28 13:37:37 UTC (rev 7253)
+++ trunk/ui/src/main/java/org/jboss/seam/ui/component/UIAction.java 2008-01-28 13:40:00 UTC (rev 7254)
@@ -31,7 +31,8 @@
* This is a support component and is not processed by the CDK (doesn't appear in faces-config)
*
*/
-public class UIAction extends UIParameter {
+public class UIAction extends UIParameter
+{
private static final String COMPONENT_FAMILY = "org.jboss.seam.ui.Action";
16 years, 11 months
Seam SVN: r7253 - trunk/doc/reference/en/modules.
by seam-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2008-01-28 08:37:37 -0500 (Mon, 28 Jan 2008)
New Revision: 7253
Modified:
trunk/doc/reference/en/modules/controls.xml
Log:
JBSEAM-2542
Modified: trunk/doc/reference/en/modules/controls.xml
===================================================================
--- trunk/doc/reference/en/modules/controls.xml 2008-01-28 12:56:18 UTC (rev 7252)
+++ trunk/doc/reference/en/modules/controls.xml 2008-01-28 13:37:37 UTC (rev 7253)
@@ -90,6 +90,12 @@
<para><emphasis>Usage</emphasis></para>
<programlisting><![CDATA[<s:button id="cancel" value="Cancel"
action="#{hotelBooking.cancel}"/>]]></programlisting>
+ <para>
+ You can specify both <literal>view</literal> and <literal>action</literal>
+ on <literal><s:link /></literal>. In this case, the action
+ will be called once the redirect to the specified view has
+ occured.
+ </para>
</entry>
</row>
@@ -833,6 +839,12 @@
<para><emphasis>Usage</emphasis></para>
<programlisting><![CDATA[<s:link id="register" view="/register.xhtml"
value="Register New User"/>]]></programlisting>
+ <para>
+ You can specify both <literal>view</literal> and <literal>action</literal>
+ on <literal><s:link /></literal>. In this case, the action
+ will be called once the redirect to the specified view has
+ occured.
+ </para>
</entry>
</row>
16 years, 11 months
Seam SVN: r7252 - branches/Seam_2_0/seam-gen.
by seam-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2008-01-28 07:56:18 -0500 (Mon, 28 Jan 2008)
New Revision: 7252
Modified:
branches/Seam_2_0/seam-gen/build.xml
Log:
JBSEAM-2373
Modified: branches/Seam_2_0/seam-gen/build.xml
===================================================================
--- branches/Seam_2_0/seam-gen/build.xml 2008-01-28 12:53:35 UTC (rev 7251)
+++ branches/Seam_2_0/seam-gen/build.xml 2008-01-28 12:56:18 UTC (rev 7252)
@@ -3,6 +3,8 @@
<project name="seam-gen" default="help" basedir="." xmlns:artifact="urn:maven-artifact-ant">
<!-- Build resources -->
<property name="seam.dir" value="${ant.file.seam-gen}/../../" />
+ <!-- Order is important -->
+ <property file="./build.properties" />
<import file="${seam.dir}/build/common.build.xml" />
<target name="init">
@@ -39,7 +41,6 @@
</target>
<target name="init-properties" depends="init">
- <property file="./build.properties" />
<packageDirectory property="action.dir" package="action/${action.package}"/>
<packageDirectory property="model.dir" package="model/${model.package}"/>
16 years, 11 months
Seam SVN: r7251 - trunk/seam-gen.
by seam-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2008-01-28 07:53:35 -0500 (Mon, 28 Jan 2008)
New Revision: 7251
Modified:
trunk/seam-gen/build.xml
Log:
JBSEAM-2373
Modified: trunk/seam-gen/build.xml
===================================================================
--- trunk/seam-gen/build.xml 2008-01-28 10:08:46 UTC (rev 7250)
+++ trunk/seam-gen/build.xml 2008-01-28 12:53:35 UTC (rev 7251)
@@ -3,6 +3,9 @@
<project name="seam-gen" default="help" basedir="." xmlns:artifact="urn:maven-artifact-ant">
<!-- Build resources -->
<property name="seam.dir" value="${ant.file.seam-gen}/../../" />
+
+ <!-- Order is important -->
+ <property file="./build.properties" />
<import file="${seam.dir}/build/common.build.xml" />
<target name="init">
@@ -39,7 +42,6 @@
</target>
<target name="init-properties" depends="init">
- <property file="./build.properties" />
<packageDirectory property="action.dir" package="action/${action.package}"/>
<packageDirectory property="model.dir" package="model/${model.package}"/>
16 years, 11 months
Seam SVN: r7250 - in trunk/examples/wiki: src/etc and 11 other directories.
by seam-commits@lists.jboss.org
Author: christian.bauer(a)jboss.com
Date: 2008-01-28 05:08:46 -0500 (Mon, 28 Jan 2008)
New Revision: 7250
Added:
trunk/examples/wiki/view/themes/sfwkorg/img/runningon_seamlogo_beige.gif
Removed:
trunk/examples/wiki/view/themes/sfwkorg/img/powered_by_seam.png
Modified:
trunk/examples/wiki/build.xml
trunk/examples/wiki/src/etc/META-INF/components-dev.xml
trunk/examples/wiki/src/etc/META-INF/persistence-dev-war.xml
trunk/examples/wiki/src/etc/META-INF/persistence-prod-war.xml
trunk/examples/wiki/src/etc/WEB-INF/pages.xml
trunk/examples/wiki/src/etc/messages_en.properties
trunk/examples/wiki/src/main/org/jboss/seam/wiki/WikiInit.java
trunk/examples/wiki/src/main/org/jboss/seam/wiki/core/action/NodeHome.java
trunk/examples/wiki/src/test/org/jboss/seam/wiki/test/WikiBaseData.dbunit.xml
trunk/examples/wiki/view/message.xhtml
trunk/examples/wiki/view/plugins/feedAggregator/plugin.xhtml
trunk/examples/wiki/view/themes/default/css/feedAggregator.css
trunk/examples/wiki/view/themes/sfwkorg/css/feedAggregator.css
trunk/examples/wiki/view/themes/sfwkorg/css/sfwk.css
trunk/examples/wiki/view/themes/sfwkorg/template.xhtml
Log:
Improved exception handling a bit (still buggy)
Modified: trunk/examples/wiki/build.xml
===================================================================
--- trunk/examples/wiki/build.xml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/build.xml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -427,6 +427,8 @@
<!-- Clean up afterwards for the next deploy run -->
<antcall target="clean"/>
+ <echo message="Compiled and packaged distribution files into directory: ${wiki.dist.dir}"/>
+
</target>
<!-- ######################## TOOLS ################## -->
Modified: trunk/examples/wiki/src/etc/META-INF/components-dev.xml
===================================================================
--- trunk/examples/wiki/src/etc/META-INF/components-dev.xml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/src/etc/META-INF/components-dev.xml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -35,4 +35,9 @@
</property>
</component>
+ <!-- Wiki is in debug mode -->
+ <component name="wikiInit" class="org.jboss.seam.wiki.WikiInit" precedence="30">
+ <property name="debug">true</property>
+ </component>
+
</components>
\ No newline at end of file
Modified: trunk/examples/wiki/src/etc/META-INF/persistence-dev-war.xml
===================================================================
--- trunk/examples/wiki/src/etc/META-INF/persistence-dev-war.xml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/src/etc/META-INF/persistence-dev-war.xml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -41,8 +41,9 @@
<!-- Enable EHCache and register the JMX monitoring MBean -->
<property name="hibernate.cache.provider_class" value="org.jboss.seam.wiki.util.MonitoringEHCacheProvider"/>
- <property name="hibernate.cache.use_query_cache" value="true"/>
- <property name="hibernate.cache.use_second_level_cache" value="true"/>
+ <!-- TODO: The cache causes lots of unexpected stale query data problems, need to investigate -->
+ <property name="hibernate.cache.use_query_cache" value="false"/>
+ <property name="hibernate.cache.use_second_level_cache" value="false"/>
<property name="hibernate.ejb.classcache.org.jboss.seam.wiki.core.model.WikiNode"
value="read-write, WikiNode"/>
Modified: trunk/examples/wiki/src/etc/META-INF/persistence-prod-war.xml
===================================================================
--- trunk/examples/wiki/src/etc/META-INF/persistence-prod-war.xml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/src/etc/META-INF/persistence-prod-war.xml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -36,8 +36,9 @@
<!-- Enable EHCache and register the JMX monitoring MBean -->
<property name="hibernate.cache.provider_class" value="org.jboss.seam.wiki.util.MonitoringEHCacheProvider"/>
- <property name="hibernate.cache.use_query_cache" value="true"/>
- <property name="hibernate.cache.use_second_level_cache" value="true"/>
+ <!-- TODO: The cache causes lots of unexpected stale query data problems, need to investigate -->
+ <property name="hibernate.cache.use_query_cache" value="false"/>
+ <property name="hibernate.cache.use_second_level_cache" value="false"/>
<property name="hibernate.ejb.classcache.org.jboss.seam.wiki.core.model.WikiNode"
value="read-write, WikiNode"/>
Modified: trunk/examples/wiki/src/etc/WEB-INF/pages.xml
===================================================================
--- trunk/examples/wiki/src/etc/WEB-INF/pages.xml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/src/etc/WEB-INF/pages.xml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -355,42 +355,36 @@
<page view-id="/userList_m.xhtml">
<description>#{messages['lacewiki.label.userList.MemberList']} (#{messages['lacewiki.label.userList.Results']}: #{userSearch.rowCount})</description>
</page>
-
-
-
- <page view-id="/test.xhtml">
- <param name="foo" value="#{testBean.foo}"/>
- </page>
-
<exception class="javax.faces.application.ViewExpiredException">
- <redirect view-id="/message.xhtml">
+ <!-- TODO: This is never thrown by JSF -->
+ <redirect view-id="/wiki.xhtml">
<message>Your session has timed out, please try again</message>
</redirect>
</exception>
- <!--
- <exception class="org.jboss.seam.framework.EntityNotFoundException">
- <end-conversation/>
- <http-error error-code="404"/>
- </exception>
-
<exception class="org.jboss.seam.security.AuthorizationException">
<end-conversation/>
- <redirect view-id="/message.xhtml">
+ <redirect view-id="/wiki.xhtml">
<message severity="WARN">#{messages['lacewiki.msg.AccessDenied']}: #{org.jboss.seam.handledException.message}</message>
</redirect>
</exception>
<exception class="javax.persistence.OptimisticLockException">
+ <end-conversation/>
+ <!-- TODO: This fails randomly, it works only once and then we don't get the message anymore?! -->
<redirect view-id="/message.xhtml">
- <message>An error occured.</message>
+ <message severity="WARN">#{messages['lacewiki.msg.OptimisticLockError']}</message>
</redirect>
</exception>
--->
- <!-- This breaks unit tests...
+ <exception class="org.jboss.seam.framework.EntityNotFoundException">
+ <end-conversation/>
+ <http-error error-code="404"/>
+ </exception>
+
+ <!-- TODO: This breaks unit tests...
<exception>
<redirect view-id="/message.xhtml">
<message severity="ERROR">Exception: #{org.jboss.seam.exception.message}</message>
Modified: trunk/examples/wiki/src/etc/messages_en.properties
===================================================================
--- trunk/examples/wiki/src/etc/messages_en.properties 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/src/etc/messages_en.properties 2008-01-28 10:08:46 UTC (rev 7250)
@@ -20,8 +20,8 @@
org.jboss.seam.loginFailed=Login failed, please try again.
org.jboss.seam.loginSuccessful=Login successful, welcome #0.
-org.jboss.seam.TransactionFailed=Transaction failed
-org.jboss.seam.NoConversation=The conversation ended, timed out or was processing another request.
+org.jboss.seam.TransactionFailed=Transaction failed.
+org.jboss.seam.NoConversation=The workspace ended, timed out or was processing another request.
org.jboss.seam.IllegalNavigation=Illegal navigation
org.jboss.seam.ProcessEnded=Process #0 already ended
org.jboss.seam.ProcessNotFound=Process #0 not found
@@ -639,7 +639,7 @@
lacewiki.msg.ImportDuplicateName=Skipping file '{0}', name is already used in this area...
lacewiki.msg.ImportInvalidNode=Skipping entry '{0}', invalid: {1}
lacewiki.msg.ImportOk=Created file '{0}' in current directory.
-lacewiki.msg.OptimisticLockError=Someone modified the same record while you were editing it. Please restart your workspace.
+lacewiki.msg.OptimisticLockError=Someone modified the same record while you were editing it. Your workspace has been closed.
lacewiki.msg.AccessDenied=Access Denied
lacewiki.msg.FatalError=An unrecoverable error occured!
lacewiki.msg.Trash.Emptied=All items in the trash have been permanently deleted.
Modified: trunk/examples/wiki/src/main/org/jboss/seam/wiki/WikiInit.java
===================================================================
--- trunk/examples/wiki/src/main/org/jboss/seam/wiki/WikiInit.java 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/src/main/org/jboss/seam/wiki/WikiInit.java 2008-01-28 10:08:46 UTC (rev 7250)
@@ -32,6 +32,8 @@
@Logger
static Log log;
+ private boolean debug;
+
@In(required = false)
DBUnitImporter dbunitImporter;
@@ -66,6 +68,14 @@
ManagementFactory.getPlatformMBeanServer().unregisterMBean(hibernateMBeanName);
}
+ public boolean isDebug() {
+ return debug;
+ }
+
+ public void setDebug(boolean debug) {
+ this.debug = debug;
+ }
+
/** Utility to debug JBoss JNDI problems */
public static String listJNDITree(String namespace) {
StringBuffer buffer = new StringBuffer(4096);
Modified: trunk/examples/wiki/src/main/org/jboss/seam/wiki/core/action/NodeHome.java
===================================================================
--- trunk/examples/wiki/src/main/org/jboss/seam/wiki/core/action/NodeHome.java 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/src/main/org/jboss/seam/wiki/core/action/NodeHome.java 2008-01-28 10:08:46 UTC (rev 7250)
@@ -134,6 +134,10 @@
throw new IllegalStateException("Could not find parent node with id: " + parentNodeId);
getLog().debug("initalized with parent node: " + parentNode);
+ // Check write access level of the parent node, if the user wants to create a new node
+ if (!Identity.instance().hasPermission("Node", "create", parentNode) )
+ throw new AuthorizationException("You don't have permission for this operation");
+
// Default to same access permissions as parent node
node.setWriteAccessLevel(parentNode.getWriteAccessLevel());
node.setReadAccessLevel(parentNode.getReadAccessLevel());
@@ -166,6 +170,10 @@
public N beforeNodeEditFound(N node) {
+ // Check write access level of the node the user wants to edit
+ if (!Identity.instance().hasPermission("Node", "edit", node) )
+ throw new AuthorizationException("You don't have permission for this operation");
+
writeAccessLevel = getAccessLevelsList().get(
accessLevelsList.indexOf(
new Role.AccessLevel(node.getWriteAccessLevel())
Modified: trunk/examples/wiki/src/test/org/jboss/seam/wiki/test/WikiBaseData.dbunit.xml
===================================================================
--- trunk/examples/wiki/src/test/org/jboss/seam/wiki/test/WikiBaseData.dbunit.xml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/src/test/org/jboss/seam/wiki/test/WikiBaseData.dbunit.xml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -4,7 +4,7 @@
<PREFERENCE PREF_ID = "1" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "baseUrl" STRING_VALUE = "http://localhost:8080/wiki" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
<PREFERENCE PREF_ID = "2" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "timeZone" STRING_VALUE = "CET" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
- <PREFERENCE PREF_ID = "3" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "themeName" STRING_VALUE = "default" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
+ <PREFERENCE PREF_ID = "3" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "themeName" STRING_VALUE = "sfwkorg" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
<PREFERENCE PREF_ID = "4" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "memberArea" STRING_VALUE = "Members" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
<PREFERENCE PREF_ID = "5" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "helpArea" STRING_VALUE = "Help" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
<PREFERENCE PREF_ID = "6" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "defaultDocumentId" STRING_VALUE = "[NULL]" LONG_VALUE = "6" BOOLEAN_VALUE = "[NULL]"/>
@@ -22,20 +22,20 @@
<PREFERENCE PREF_ID = "18" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "trashArea" STRING_VALUE = "Trash" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
<PREFERENCE PREF_ID = "19" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Wiki" PROPERTY_NAME = "showSiteFeedInMenu" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
- <PREFERENCE PREF_ID = "20" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "DocEditor" PROPERTY_NAME = "minorRevisionEnabled" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
- <PREFERENCE PREF_ID = "21" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "DocEditor" PROPERTY_NAME = "regularEditAreaRows" STRING_VALUE = "[NULL]" LONG_VALUE = "15" BOOLEAN_VALUE = "[NULL]"/>
- <PREFERENCE PREF_ID = "22" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "DocEditor" PROPERTY_NAME = "regularEditAreaColumns" STRING_VALUE = "[NULL]" LONG_VALUE = "60" BOOLEAN_VALUE = "[NULL]"/>
+ <PREFERENCE PREF_ID = "50" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "DocEditor" PROPERTY_NAME = "minorRevisionEnabled" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
+ <PREFERENCE PREF_ID = "51" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "DocEditor" PROPERTY_NAME = "regularEditAreaRows" STRING_VALUE = "[NULL]" LONG_VALUE = "15" BOOLEAN_VALUE = "[NULL]"/>
+ <PREFERENCE PREF_ID = "52" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "DocEditor" PROPERTY_NAME = "regularEditAreaColumns" STRING_VALUE = "[NULL]" LONG_VALUE = "60" BOOLEAN_VALUE = "[NULL]"/>
- <PREFERENCE PREF_ID = "30" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "activationCodeSalt" STRING_VALUE = "MySecretSalt123" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
- <PREFERENCE PREF_ID = "31" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "passwordRegex" STRING_VALUE = "^[0-9A-Za-z]{6,15}" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
- <PREFERENCE PREF_ID = "32" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "newUserInRole" STRING_VALUE = "member" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
- <PREFERENCE PREF_ID = "33" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "enableRegistration" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
- <PREFERENCE PREF_ID = "34" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "createHomeAfterUserActivation" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "false"/>
- <PREFERENCE PREF_ID = "35" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "homepageDefaultContent" STRING_VALUE = "This is your homepage, login to edit it." LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
+ <PREFERENCE PREF_ID = "60" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "activationCodeSalt" STRING_VALUE = "MySecretSalt123" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
+ <PREFERENCE PREF_ID = "61" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "passwordRegex" STRING_VALUE = "^[0-9A-Za-z]{6,15}" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
+ <PREFERENCE PREF_ID = "62" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "newUserInRole" STRING_VALUE = "member" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
+ <PREFERENCE PREF_ID = "63" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "enableRegistration" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
+ <PREFERENCE PREF_ID = "64" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "createHomeAfterUserActivation" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "false"/>
+ <PREFERENCE PREF_ID = "65" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "UserManagement" PROPERTY_NAME = "homepageDefaultContent" STRING_VALUE = "This is your homepage, login to edit it." LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "[NULL]"/>
- <PREFERENCE PREF_ID = "40" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Comments" PROPERTY_NAME = "listAscending" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "false"/>
- <PREFERENCE PREF_ID = "41" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Comments" PROPERTY_NAME = "enableByDefault" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
- <PREFERENCE PREF_ID = "42" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Comments" PROPERTY_NAME = "threaded" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
+ <PREFERENCE PREF_ID = "70" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Comments" PROPERTY_NAME = "listAscending" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "false"/>
+ <PREFERENCE PREF_ID = "71" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Comments" PROPERTY_NAME = "enableByDefault" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
+ <PREFERENCE PREF_ID = "72" OBJ_VERSION = "0" USER_ID = "[NULL]" ENTITY_NAME = "Comments" PROPERTY_NAME = "threaded" STRING_VALUE = "[NULL]" LONG_VALUE = "[NULL]" BOOLEAN_VALUE = "true"/>
<!-- PLUGINS -->
Modified: trunk/examples/wiki/view/message.xhtml
===================================================================
--- trunk/examples/wiki/view/message.xhtml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/view/message.xhtml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -14,45 +14,42 @@
<h:messages/>
</div>
-<s:fragment rendered="#{init.debug}">
- Exception Details:
- <hr/>
+<s:fragment rendered="#{wikiInit.debug}">
- <s:div id="stackTraceHandled">
- Handled exception:
- <pre style="font-size:75%;">
+<h2>wikiInit.debug=true</h2>
-Top level exception : #{org.jboss.seam.handledException.class.name}: #{org.jboss.seam.handledException.message}
+<hr/>
+
+<h3>Handled exception:</h3>
+<pre>Top level exception : #{org.jboss.seam.handledException.class.name}: #{org.jboss.seam.handledException.message}
=========================================================================================================================
<ui:repeat value="#{org.jboss.seam.handledException.stackTrace}" var="stackElement">
#{stackElement}</ui:repeat>
+</pre>
-Root cause exception: #{wiki:unwrap(org.jboss.seam.handledException).class.name}: #{wiki:unwrap(org.jboss.seam.handledException).message}
+<s:fragment rendered="#{wiki:unwrap(org.jboss.seam.handledException) != org.jboss.seam.handledException}">
+<pre>Root cause exception: #{wiki:unwrap(org.jboss.seam.handledException).class.name}: #{wiki:unwrap(org.jboss.seam.handledException).message}
=========================================================================================================================
<ui:repeat value="#{wiki:unwrap(org.jboss.seam.handledException).stackTrace}" var="stackElement">
#{stackElement}</ui:repeat>
-
</pre>
- <hr/>
- </s:div>
+</s:fragment>
- <s:div id="stackTrace">
- Unhandled or wrapper exception:
- <pre style="font-size:75%;">
+<h3>Unhandled or wrapper exception:</h3>
-Top level exception : #{org.jboss.seam.exception.class.name}: #{org.jboss.seam.exception.message}
+<pre>Top level exception : #{org.jboss.seam.exception.class.name}: #{org.jboss.seam.exception.message}
=========================================================================================================================
<ui:repeat value="#{org.jboss.seam.exception.stackTrace}" var="stackElement">
#{stackElement}</ui:repeat>
+</pre>
-Root cause exception: #{wiki:unwrap(org.jboss.seam.exception).class.name}: #{wiki:unwrap(org.jboss.seam.exception).message}
+<s:fragment rendered="#{wiki:unwrap(org.jboss.seam.exception) != org.jboss.seam.exception}">
+<pre>Root cause exception: #{wiki:unwrap(org.jboss.seam.exception).class.name}: #{wiki:unwrap(org.jboss.seam.exception).message}
=========================================================================================================================
<ui:repeat value="#{wiki:unwrap(org.jboss.seam.exception).stackTrace}" var="stackElement">
#{stackElement}</ui:repeat>
-
</pre>
- <hr/>
- </s:div>
+</s:fragment>
</s:fragment>
Modified: trunk/examples/wiki/view/plugins/feedAggregator/plugin.xhtml
===================================================================
--- trunk/examples/wiki/view/plugins/feedAggregator/plugin.xhtml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/view/plugins/feedAggregator/plugin.xhtml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -10,28 +10,25 @@
<s:div styleClass="feedAggregator box">
- <s:div styleClass="boxHeader" rendered="#{empty preferences.get('FeedAggregator', currentMacro).aggregateId}">
- <h:outputText value="#{preferences.get('FeedAggregator', currentMacro).title}"/>
- </s:div>
-
- <h:panelGrid rendered="#{not empty preferences.get('FeedAggregator', currentMacro).aggregateId}"
- columns="2" cellpadding="0" cellspacing="0" border="0"
- columnClasses="feedAggregatorSubscribe, feedAggregatorTitle"
- styleClass="boxHeader fullWidth">
+ <s:div styleClass="boxHeader">
- <h:panelGrid columns="2" cellpadding="0" cellspacing="0" border="0">
- <h:outputLink value="#{wiki:renderAggregateFeedURL(preferences.get('FeedAggregator', currentMacro).aggregateId)}">
- <h:graphicImage value="/themes/#{preferences.get('Wiki').themeName}/img/icon.atom.ongrey.gif" width="18" height="18" alt="Atom"/>
+ <h:panelGrid columns="2" cellpadding="0" cellspacing="0" border="0"
+ styleClass="feedAggregatorTitle">
+
+ <h:outputLink value="#{wiki:renderAggregateFeedURL(preferences.get('FeedAggregator', currentMacro).aggregateId)}"
+ rendered="#{not empty preferences.get('FeedAggregator', currentMacro).aggregateId}"
+ style="margin-right:10px;">
+ <h:graphicImage value="/themes/#{preferences.get('Wiki').themeName}/img/icon.atom.ongrey.gif" width="18" height="18" alt="Atom"
+ />
</h:outputLink>
- <h:outputLink value="#{wiki:renderAggregateFeedURL(preferences.get('FeedAggregator', currentMacro).aggregateId)}">
- <h:outputText value="#{messages['feedAggregator.label.Subscribe']}"/>
- </h:outputLink>
- </h:panelGrid>
- <h:outputText value="#{preferences.get('FeedAggregator', currentMacro).title}"/>
+ <h:outputText value="#{preferences.get('FeedAggregator', currentMacro).title}"/>
- </h:panelGrid>
+ </h:panelGrid>
+ </s:div>
+
+
<div class="boxContent">
<h:dataTable value="#{feedAggregator.feedEntries}" var="feDTO"
rendered="#{not empty feedAggregator.feedEntries and feedAggregator.feedEntries.size() > 0}"
Modified: trunk/examples/wiki/view/themes/default/css/feedAggregator.css
===================================================================
--- trunk/examples/wiki/view/themes/default/css/feedAggregator.css 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/view/themes/default/css/feedAggregator.css 2008-01-28 10:08:46 UTC (rev 7250)
@@ -1,16 +1,13 @@
.feedAggregatorTitle {
- text-align: right;
+ margin-left: auto;
}
-.feedAggregatorSubscribe {
- text-align: left;
-}
-
.feedEntryColumn {
padding: 10px;
}
.feedEntryTitle {
+ font-weight: bold;
padding-top: 15px;
padding-bottom: 15px;
}
Modified: trunk/examples/wiki/view/themes/sfwkorg/css/feedAggregator.css
===================================================================
--- trunk/examples/wiki/view/themes/sfwkorg/css/feedAggregator.css 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/view/themes/sfwkorg/css/feedAggregator.css 2008-01-28 10:08:46 UTC (rev 7250)
@@ -1,11 +1,7 @@
.feedAggregatorTitle {
- text-align: right;
+ margin-left:auto;
}
-.feedAggregatorSubscribe {
- text-align: left;
-}
-
.feedEntryColumn {
padding: 10px;
}
Modified: trunk/examples/wiki/view/themes/sfwkorg/css/sfwk.css
===================================================================
--- trunk/examples/wiki/view/themes/sfwkorg/css/sfwk.css 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/view/themes/sfwkorg/css/sfwk.css 2008-01-28 10:08:46 UTC (rev 7250)
@@ -319,7 +319,7 @@
.homepageNews .rowOdd td, .homepageNews .rowEven td {
padding: 2px;
- border-bottom: 1px solid #b6b6b6;
+/* border-bottom: 1px solid #b6b6b6; */
}
/* ----- Footer styles ------ */
Deleted: trunk/examples/wiki/view/themes/sfwkorg/img/powered_by_seam.png
===================================================================
(Binary files differ)
Added: trunk/examples/wiki/view/themes/sfwkorg/img/runningon_seamlogo_beige.gif
===================================================================
(Binary files differ)
Property changes on: trunk/examples/wiki/view/themes/sfwkorg/img/runningon_seamlogo_beige.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: trunk/examples/wiki/view/themes/sfwkorg/template.xhtml
===================================================================
--- trunk/examples/wiki/view/themes/sfwkorg/template.xhtml 2008-01-27 22:03:32 UTC (rev 7249)
+++ trunk/examples/wiki/view/themes/sfwkorg/template.xhtml 2008-01-28 10:08:46 UTC (rev 7250)
@@ -385,9 +385,9 @@
</div>
<div style="margin-top: 25px; margin-left: 15px; margin-right: 15px; text-align:center;">
- <h:outputLink value="http://seamframework.org">
- <h:graphicImage value="/themes/#{preferences.get('Wiki').themeName}/img/powered_by_seam.png" width="120" height="60"
- style="border: 1px solid #666"/>
+ <h:outputLink value="http://seamframework.org/Community/GetASeamIcon">
+ <h:graphicImage value="/themes/#{preferences.get('Wiki').themeName}/img/runningon_seamlogo_beige.gif"
+ width="200" height="50"/>
</h:outputLink>
</div>
16 years, 11 months
Seam SVN: r7249 - trunk/doc/reference/en/modules.
by seam-commits@lists.jboss.org
Author: pete.muir(a)jboss.org
Date: 2008-01-27 17:03:32 -0500 (Sun, 27 Jan 2008)
New Revision: 7249
Modified:
trunk/doc/reference/en/modules/conversations.xml
Log:
JBSEAM-1753
Modified: trunk/doc/reference/en/modules/conversations.xml
===================================================================
--- trunk/doc/reference/en/modules/conversations.xml 2008-01-26 03:44:25 UTC (rev 7248)
+++ trunk/doc/reference/en/modules/conversations.xml 2008-01-27 22:03:32 UTC (rev 7249)
@@ -985,6 +985,12 @@
}]]></programlisting>
<para>
+ Also, you can't inject a conversation scoped component into an event
+ scoped component which you bind a JSF control to. This includes Seam
+ built in components like <literal>facesMessages</literal>.
+ </para>
+
+ <para>
Alternatively, you can access the JSF component tree through the implicit <literal>uiComponent</literal>
handle. The following example accesses <literal>getRowIndex()</literal>of the
<literal>UIData</literal> component which backs the data table during iteration, it prints
16 years, 11 months
Seam SVN: r7248 - in branches/Seam_2_0/examples/wiki: src/etc and 1 other directory.
by seam-commits@lists.jboss.org
Author: christian.bauer(a)jboss.com
Date: 2008-01-25 22:44:25 -0500 (Fri, 25 Jan 2008)
New Revision: 7248
Modified:
branches/Seam_2_0/examples/wiki/build.xml
branches/Seam_2_0/examples/wiki/src/etc/import-prod.sql
Log:
Fixed wiki dist build
Modified: branches/Seam_2_0/examples/wiki/build.xml
===================================================================
--- branches/Seam_2_0/examples/wiki/build.xml 2008-01-26 03:29:00 UTC (rev 7247)
+++ branches/Seam_2_0/examples/wiki/build.xml 2008-01-26 03:44:25 UTC (rev 7248)
@@ -427,6 +427,8 @@
<!-- Clean up afterwards for the next deploy run -->
<antcall target="clean"/>
+ <echo message="Compiled and packaged distribution files into directory: ${wiki.dist.dir}"/>
+
</target>
<!-- ######################## TOOLS ################## -->
Modified: branches/Seam_2_0/examples/wiki/src/etc/import-prod.sql
===================================================================
--- branches/Seam_2_0/examples/wiki/src/etc/import-prod.sql 2008-01-26 03:29:00 UTC (rev 7247)
+++ branches/Seam_2_0/examples/wiki/src/etc/import-prod.sql 2008-01-26 03:44:25 UTC (rev 7248)
@@ -79,14 +79,17 @@
INSERT INTO `WIKI_NODE` (`NODE_ID`, `AREA_NR`, `CREATED_ON`, `LAST_MODIFIED_ON`, `NAME`, `READ_ACCESS_LEVEL`, `OBJ_VERSION`, `WIKINAME`, `WRITE_ACCESS_LEVEL`, `WRITE_PROTECTED`, `CREATED_BY_USER_ID`, `LAST_MODIFIED_BY_USER_ID`, `PARENT_NODE_ID`) VALUES (7,5,'2006-09-23 13:45:00',NULL,'Wiki Text Markup',0,0,'WikiTextMarkup',1000,'',1,NULL,6)
+INSERT INTO `WIKI_NODE` (`NODE_ID`, `AREA_NR`, `CREATED_ON`, `LAST_MODIFIED_ON`, `NAME`, `READ_ACCESS_LEVEL`, `OBJ_VERSION`, `WIKINAME`, `WRITE_ACCESS_LEVEL`, `WRITE_PROTECTED`, `CREATED_BY_USER_ID`, `LAST_MODIFIED_BY_USER_ID`, `PARENT_NODE_ID`) VALUES (8,8,'2006-09-23 13:45:00',NULL,'Trash',0,0,'Trash',1000,'',1,NULL,1)
+
INSERT INTO `WIKI_FILE` (`NODE_ID`, `FILE_REVISION`) VALUES (3,0)
INSERT INTO `WIKI_FILE` (`NODE_ID`, `FILE_REVISION`) VALUES (7,0)
-INSERT INTO `WIKI_DIRECTORY` (`NODE_ID`, `DESCRIPTION`, `NS_LEFT`, `NS_RIGHT`, `NS_THREAD`, `DEFAULT_FILE_ID`) VALUES (1,NULL,1,10,1,NULL)
+INSERT INTO `WIKI_DIRECTORY` (`NODE_ID`, `DESCRIPTION`, `NS_LEFT`, `NS_RIGHT`, `NS_THREAD`, `DEFAULT_FILE_ID`) VALUES (1,NULL,1,12,1,NULL)
INSERT INTO `WIKI_DIRECTORY` (`NODE_ID`, `DESCRIPTION`, `NS_LEFT`, `NS_RIGHT`, `NS_THREAD`, `DEFAULT_FILE_ID`) VALUES (2,NULL,2,3,1,3)
INSERT INTO `WIKI_DIRECTORY` (`NODE_ID`, `DESCRIPTION`, `NS_LEFT`, `NS_RIGHT`, `NS_THREAD`, `DEFAULT_FILE_ID`) VALUES (4,'Default member area',8,9,1,NULL)
INSERT INTO `WIKI_DIRECTORY` (`NODE_ID`, `DESCRIPTION`, `NS_LEFT`, `NS_RIGHT`, `NS_THREAD`, `DEFAULT_FILE_ID`) VALUES (5,'Help documents',4,7,1,NULL)
INSERT INTO `WIKI_DIRECTORY` (`NODE_ID`, `DESCRIPTION`, `NS_LEFT`, `NS_RIGHT`, `NS_THREAD`, `DEFAULT_FILE_ID`) VALUES (6,'Creating and editing wiki documents',5,6,1,NULL)
+INSERT INTO `WIKI_DIRECTORY` (`NODE_ID`, `DESCRIPTION`, `NS_LEFT`, `NS_RIGHT`, `NS_THREAD`, `DEFAULT_FILE_ID`) VALUES (8,'Trash Area',10,11,1,NULL)
INSERT INTO `WIKI_DOCUMENT` (`NODE_ID`, `CONTENT`, `CONTENT_MACROS`, `ENABLE_COMMENT_FORM`, `ENABLE_COMMENTS`, `ENABLE_COMMENTS_ON_FEEDS`, `FOOTER`, `FOOTER_MACROS`, `HEADER`, `HEADER_MACROS`, `NAME_AS_TITLE`) VALUES (3,'Welcome to LaceWiki.\n\nLogin with admin-admin and rebuild the search index in the administration area.',NULL,true,true,true,NULL,NULL,NULL,NULL,true)
16 years, 11 months
Seam SVN: r7247 - branches/Seam_2_0/doc/reference/en.
by seam-commits@lists.jboss.org
Author: christian.bauer(a)jboss.com
Date: 2008-01-25 22:29:00 -0500 (Fri, 25 Jan 2008)
New Revision: 7247
Modified:
branches/Seam_2_0/doc/reference/en/master.xml
Log:
Backport typos fix
Modified: branches/Seam_2_0/doc/reference/en/master.xml
===================================================================
--- branches/Seam_2_0/doc/reference/en/master.xml 2008-01-26 03:00:17 UTC (rev 7246)
+++ branches/Seam_2_0/doc/reference/en/master.xml 2008-01-26 03:29:00 UTC (rev 7247)
@@ -46,7 +46,7 @@
</bookinfo>
<toc/>
-
+
<preface>
<title>Introduction to JBoss Seam</title>
@@ -55,14 +55,14 @@
</para>
<variablelist>
-
+
<varlistentry>
<term><emphasis>One kind of "stuff"</emphasis></term>
<listitem>
<para>
- Seam defines a uniform component model for all business logic in your application.
+ Seam defines a uniform component model for all business logic in your application.
A Seam component may be stateful, with the state associated with any one of several
- well-defined contexts, including the long-running, persistent, <emphasis>business process
+ well-defined contexts, including the long-running, persistent, <emphasis>business process
context</emphasis> and the <emphasis>conversation context</emphasis>, which is
preserved across multiple web requests in a user interaction.
</para>
@@ -70,7 +70,7 @@
There is no distinction between presentation tier components and business logic
components in Seam. You can layer your application according to whatever architecture
you devise, rather than being forced to shoehorn your application logic into an
- unnatural layering scheme forced upon you by whatever combination of stovepipe
+ unnatural layering scheme forced upon you by whatever combination of stovepipe
frameworks you're using today.
</para>
<para>
@@ -84,7 +84,7 @@
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>Integrate JSF with EJB 3.0</emphasis></term>
<listitem>
@@ -103,50 +103,50 @@
the developer think about the business problem.
</para>
<para>
- It is possible to write Seam applications where "everything" is an EJB. This may come
- as a surprise if you're used to thinking of EJBs as coarse-grained, so-called
- "heavyweight" objects. However, version 3.0 has completely changed the nature of EJB
- from the point of view of the developer. An EJB is a fine-grained object—nothing
- more complex than an annotated JavaBean. Seam even encourages you to use session beans
- as JSF action listeners!
+ It is possible to write Seam applications where "everything" is an EJB. This may come
+ as a surprise if you're used to thinking of EJBs as coarse-grained, so-called
+ "heavyweight" objects. However, version 3.0 has completely changed the nature of EJB
+ from the point of view of the developer. An EJB is a fine-grained object—nothing
+ more complex than an annotated JavaBean. Seam even encourages you to use session beans
+ as JSF action listeners!
</para>
<para>
On the other hand, if you prefer not to adopt EJB 3.0 at this time, you don't have to.
Virtually any Java class may be a Seam component, and Seam provides all the functionality
- that you expect from a "lightweight" container, and more, for any component, EJB or
+ that you expect from a "lightweight" container, and more, for any component, EJB or
otherwise.
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>Integrated AJAX</emphasis></term>
<listitem>
<para>
- Seam supports the best open source JSF-based AJAX solutions: JBoss RichFaces and
- ICEfaces. These solutions let you add AJAX capability to your user interface without
+ Seam supports the best open source JSF-based AJAX solutions: JBoss RichFaces and
+ ICEfaces. These solutions let you add AJAX capability to your user interface without
the need to write any JavaScript code.
</para>
<para>
- Alternatively, Seam provides a built-in JavaScript remoting layer that lets you call
- components asynchronously from client-side JavaScript without the need for an intermediate
- action layer. You can ever subscribe to server-side JMS topics and receive messages via AJAX
+ Alternatively, Seam provides a built-in JavaScript remoting layer that lets you call
+ components asynchronously from client-side JavaScript without the need for an intermediate
+ action layer. You can even subscribe to server-side JMS topics and receive messages via AJAX
push.
</para>
<para>
- Neither of these approaches would work well, were it not for Seam's built-in concurrency
- and state management, which ensures that many concurrent fine-grained, asynchronous AJAX
+ Neither of these approaches would work well, were it not for Seam's built-in concurrency
+ and state management, which ensures that many concurrent fine-grained, asynchronous AJAX
requests are handled safely and efficiently on the server side.
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>Business process as a first class construct</emphasis></term>
<listitem>
<para>
- Optionally, Seam provides transparent business process management via jBPM. You won't
- believe how easy it is to implement complex workflows, collaboration and and task management
+ Optionally, Seam provides transparent business process management via jBPM. You won't
+ believe how easy it is to implement complex workflows, collaboration and and task management
using jBPM and Seam.
</para>
<para>
@@ -160,7 +160,7 @@
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>Declarative state management</emphasis></term>
<listitem>
@@ -179,7 +179,7 @@
</para>
<para>
Declarative application state management is made possible by the richness of the
- <emphasis>context model</emphasis> defined by Seam. Seam extends the context model defined
+ <emphasis>context model</emphasis> defined by Seam. Seam extends the context model defined
by the servlet spec—request, session, application—with two new
contexts—conversation and business process—that are more meaningful from the
point of view of the business logic.
@@ -190,14 +190,14 @@
like Hibernate or JPA? Seam's conversation-scoped persistence contexts mean you'll
rarely have to see a <literal>LazyInitializationException</literal>. Have you ever
had problems with the refresh button? The back button? With duplicate form submission?
- With propagating messages across a post-then-redirect? Seam's conversation management
+ With propagating messages across a post-then-redirect? Seam's conversation management
solves these problems without you even needing to really think about them. They're all
- symptoms of the broken state management architecture has been prevalent since the
+ symptoms of the broken state management architecture that has been prevalent since the
earliest days of the web.
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>Bijection</emphasis></term>
<listitem>
@@ -207,38 +207,38 @@
these containers emphasize injection of components that implement <emphasis>stateless services</emphasis>.
Even when injection of stateful components is supported (such as in JSF), it is virtually useless
for handling application state because the scope of the stateful component cannot be defined with
- sufficient flexibility, and because components belonging to wider scopes may not be injected into
+ sufficient flexibility, and because components belonging to wider scopes may not be injected into
components belonging to narrower scopes.
</para>
<para>
- <emphasis>Bijection</emphasis> differs from IoC in that it is <emphasis>dynamic</emphasis>,
+ <emphasis>Bijection</emphasis> differs from IoC in that it is <emphasis>dynamic</emphasis>,
<emphasis>contextual</emphasis>, and <emphasis>bidirectional</emphasis>.
You can think of it as a mechanism for aliasing contextual variables (names in the various contexts
bound to the current thread) to attributes of the component. Bijection allows auto-assembly of stateful
components by the container. It even allows a component to safely and easily manipulate the
- value of a context variable, just by assigning to an attribute of the component.
+ value of a context variable, just by assigning it to an attribute of the component.
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>Workspace management and multi-window browsing</emphasis></term>
<listitem>
<para>
Seam applications let the user freely switch between multiple browser tabs, each associated with a
- different, safely isolated, conversation. Applications may even take advantage of <emphasis>workspace
+ different, safely isolated, conversation. Applications may even take advantage of <emphasis>workspace
management</emphasis>, allowing the user to switch between conversations (workspaces) in a single
browser tab. Seam provides not only correct multi-window operation, but also multi-window-like
operation in a single window!
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>Prefer annotations to XML</emphasis></term>
<listitem>
<para>
- Traditionally, the Java community has been in a state of deep confusion about precisely
+ Traditionally, the Java community has been in a state of deep confusion about precisely
what kinds of meta-information counts as configuration. J2EE and popular "lightweight"
containers have provided XML-based deployment descriptors both for things which are
truly configurable between different deployments of the system, and for any other kinds
@@ -256,7 +256,7 @@
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>Integration testing is easy</emphasis></term>
<listitem>
@@ -271,12 +271,12 @@
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>The specs ain't perfect</emphasis></term>
<listitem>
<para>
- We think the latest incarnation of Java EE is great. But we know it's never going to be
+ We think the latest incarnation of Java EE is great. But we know it's never going to be
perfect. Where there are holes in the specifications (for example, limitations in the
JSF lifecycle for GET requests), Seam fixes them. And the authors of Seam are working
with the JCP expert groups to make sure those fixes make their way back into the next
@@ -284,25 +284,25 @@
</para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><emphasis>There's more to a web application than serving HTML pages</emphasis></term>
<listitem>
<para>
Today's web frameworks think too small. They let you get user input off a form and
into your Java objects. And then they leave you hanging. A truly complete web application
- framework should address problems like persistence, concurrency, asynchronicity, state
+ framework should address problems like persistence, concurrency, asynchronicity, state
management, security, email, messaging, PDF and chart generation, workflow, wikitext
rendering, webservices, caching and more. Once you scratch the surface of Seam, you'll
be amazed at how many problems become simpler...
</para>
<para>
- Seam integrates JPA and Hibernate3 for persistence, the EJB Timer Service and Quartz
- for lightweight asychronicity, jBPM for workflow, JBoss Rules for business rules, Meldware
- Mail for email, Hibernate Search and Lucene for full text search, JMS for messaging and JBoss
+ Seam integrates JPA and Hibernate3 for persistence, the EJB Timer Service and Quartz
+ for lightweight asychronicity, jBPM for workflow, JBoss Rules for business rules, Meldware
+ Mail for email, Hibernate Search and Lucene for full text search, JMS for messaging and JBoss
Cache for page fragment caching. Seam layers an innovative rule-based security framework over
- JAAS and JBoss Rules. There's even JSF tag libraries for rendering PDF, outgoing email, charts
- and wikitext. Seam components may be called synchronously as a Web Service, asynchronously
+ JAAS and JBoss Rules. There's even JSF tag libraries for rendering PDF, outgoing email, charts
+ and wikitext. Seam components may be called synchronously as a Web Service, asynchronously
from client-side JavaScript or Google Web Toolkit or, of course, directly from JSF.
</para>
</listitem>
@@ -356,7 +356,7 @@
&mail;
&jms;
&cache;
- &webservices;
+ &webservices;
&remoting;
&gwt;
&spring;
16 years, 11 months
Seam SVN: r7246 - trunk/doc/reference/en.
by seam-commits@lists.jboss.org
Author: christian.bauer(a)jboss.com
Date: 2008-01-25 22:00:17 -0500 (Fri, 25 Jan 2008)
New Revision: 7246
Modified:
trunk/doc/reference/en/master.xml
Log:
Typos
Modified: trunk/doc/reference/en/master.xml
===================================================================
--- trunk/doc/reference/en/master.xml 2008-01-26 02:59:23 UTC (rev 7245)
+++ trunk/doc/reference/en/master.xml 2008-01-26 03:00:17 UTC (rev 7246)
@@ -130,7 +130,7 @@
<para>
Alternatively, Seam provides a built-in JavaScript remoting layer that lets you call
components asynchronously from client-side JavaScript without the need for an intermediate
- action layer. You can ever subscribe to server-side JMS topics and receive messages via AJAX
+ action layer. You can even subscribe to server-side JMS topics and receive messages via AJAX
push.
</para>
<para>
@@ -192,7 +192,7 @@
had problems with the refresh button? The back button? With duplicate form submission?
With propagating messages across a post-then-redirect? Seam's conversation management
solves these problems without you even needing to really think about them. They're all
- symptoms of the broken state management architecture has been prevalent since the
+ symptoms of the broken state management architecture that has been prevalent since the
earliest days of the web.
</para>
</listitem>
@@ -216,7 +216,7 @@
You can think of it as a mechanism for aliasing contextual variables (names in the various contexts
bound to the current thread) to attributes of the component. Bijection allows auto-assembly of stateful
components by the container. It even allows a component to safely and easily manipulate the
- value of a context variable, just by assigning to an attribute of the component.
+ value of a context variable, just by assigning it to an attribute of the component.
</para>
</listitem>
</varlistentry>
16 years, 11 months
Seam SVN: r7245 - branches/Seam_2_0/src/main/org/jboss/seam/core.
by seam-commits@lists.jboss.org
Author: norman.richards(a)jboss.com
Date: 2008-01-25 21:59:23 -0500 (Fri, 25 Jan 2008)
New Revision: 7245
Modified:
branches/Seam_2_0/src/main/org/jboss/seam/core/SeamResourceBundle.java
Log:
JBSEAM-2526
Modified: branches/Seam_2_0/src/main/org/jboss/seam/core/SeamResourceBundle.java
===================================================================
--- branches/Seam_2_0/src/main/org/jboss/seam/core/SeamResourceBundle.java 2008-01-26 01:47:52 UTC (rev 7244)
+++ branches/Seam_2_0/src/main/org/jboss/seam/core/SeamResourceBundle.java 2008-01-26 02:59:23 UTC (rev 7245)
@@ -80,15 +80,16 @@
List<java.util.ResourceBundle> pageBundles = getPageResourceBundles();
List<ResourceBundle> bundles = getBundlesForCurrentLocale();
Enumeration<String>[] enumerations = new Enumeration[bundles.size() + pageBundles.size()];
+
int i = 0;
- for (; i < pageBundles.size(); i++)
- {
- enumerations[i++] = pageBundles.get(i).getKeys();
+ for (java.util.ResourceBundle bundle: pageBundles) {
+ enumerations[i++] = bundle.getKeys();
}
- for (; i < bundles.size(); i++)
- {
- enumerations[i] = bundles.get(i).getKeys();
+
+ for (ResourceBundle bundle: bundles) {
+ enumerations[i++] = bundle.getKeys();
}
+
return new EnumerationEnumeration<String>(enumerations);
}
@@ -150,4 +151,4 @@
return org.jboss.seam.core.Locale.instance();
}
-}
\ No newline at end of file
+}
16 years, 11 months