You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2011/11/29 09:00:55 UTC
svn commit: r1207775 [4/4] - in /incubator/isis/trunk/framework:
core/commons/src/main/java/org/apache/isis/core/commons/matchers/
core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/object/ignore/javalang/
core/runtime/src/main/java/org...
Modified: incubator/isis/trunk/framework/security/ldap/src/main/java/org/apache/isis/security/ldap/authentication/LdapAuthenticationManagerInstaller.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/security/ldap/src/main/java/org/apache/isis/security/ldap/authentication/LdapAuthenticationManagerInstaller.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/security/ldap/src/main/java/org/apache/isis/security/ldap/authentication/LdapAuthenticationManagerInstaller.java (original)
+++ incubator/isis/trunk/framework/security/ldap/src/main/java/org/apache/isis/security/ldap/authentication/LdapAuthenticationManagerInstaller.java Tue Nov 29 08:00:38 2011
@@ -19,10 +19,14 @@
package org.apache.isis.security.ldap.authentication;
+import java.util.List;
+
import org.apache.isis.core.commons.config.IsisConfiguration;
import org.apache.isis.core.runtime.authentication.standard.Authenticator;
import org.apache.isis.runtimes.dflt.runtime.authentication.AuthenticationManagerStandardInstallerAbstractForDfltRuntime;
+import com.google.common.collect.Lists;
+
public class LdapAuthenticationManagerInstaller extends AuthenticationManagerStandardInstallerAbstractForDfltRuntime {
public static String NAME = "ldap";
@@ -32,7 +36,7 @@ public class LdapAuthenticationManagerIn
}
@Override
- protected Authenticator createAuthenticator(final IsisConfiguration configuration) {
- return new LdapAuthenticator(configuration);
+ protected List<Authenticator> createAuthenticators(final IsisConfiguration configuration) {
+ return Lists.<Authenticator>newArrayList(new LdapAuthenticator(configuration));
}
}
Modified: incubator/isis/trunk/framework/security/ldap/src/main/java/org/apache/isis/security/ldap/authentication/LdapAuthenticator.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/security/ldap/src/main/java/org/apache/isis/security/ldap/authentication/LdapAuthenticator.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/security/ldap/src/main/java/org/apache/isis/security/ldap/authentication/LdapAuthenticator.java (original)
+++ incubator/isis/trunk/framework/security/ldap/src/main/java/org/apache/isis/security/ldap/authentication/LdapAuthenticator.java Tue Nov 29 08:00:38 2011
@@ -54,8 +54,8 @@ public class LdapAuthenticator extends A
}
@Override
- public boolean canAuthenticate(final AuthenticationRequest request) {
- return request instanceof AuthenticationRequestPassword;
+ public final boolean canAuthenticate(final Class<? extends AuthenticationRequest> authenticationRequestClass) {
+ return AuthenticationRequestPassword.class.isAssignableFrom(authenticationRequestClass);
}
private void setRoles(final DirContext authContext, final AuthenticationRequest request, final String username)
Modified: incubator/isis/trunk/framework/security/sql/src/main/java/org/apache/isis/security/sql/authentication/SqlAuthenticationManagerInstaller.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/security/sql/src/main/java/org/apache/isis/security/sql/authentication/SqlAuthenticationManagerInstaller.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/security/sql/src/main/java/org/apache/isis/security/sql/authentication/SqlAuthenticationManagerInstaller.java (original)
+++ incubator/isis/trunk/framework/security/sql/src/main/java/org/apache/isis/security/sql/authentication/SqlAuthenticationManagerInstaller.java Tue Nov 29 08:00:38 2011
@@ -20,12 +20,16 @@
package org.apache.isis.security.sql.authentication;
import java.lang.reflect.InvocationTargetException;
+import java.util.List;
import org.apache.isis.applib.ApplicationException;
import org.apache.isis.core.commons.config.IsisConfiguration;
+import org.apache.isis.core.commons.factory.InstanceUtil;
import org.apache.isis.core.runtime.authentication.standard.Authenticator;
import org.apache.isis.runtimes.dflt.runtime.authentication.AuthenticationManagerStandardInstallerAbstractForDfltRuntime;
+import com.google.common.collect.Lists;
+
public class SqlAuthenticationManagerInstaller extends AuthenticationManagerStandardInstallerAbstractForDfltRuntime {
public static final String NAME = "sql";
@@ -35,30 +39,33 @@ public class SqlAuthenticationManagerIns
}
@Override
+ protected List<Authenticator> createAuthenticators(final IsisConfiguration configuration) {
+ return Lists.<Authenticator>newArrayList(createAuthenticator(configuration));
+ }
+
protected Authenticator createAuthenticator(final IsisConfiguration configuration) {
String className = configuration.getString("isis.authentication.authenticator");
if (className == null) {
return new SqlAuthenticator(configuration);
- } else {
- try {
- Class<?> authenticatorClass = Class.forName(className);
- return (Authenticator) authenticatorClass.getConstructor(IsisConfiguration.class).newInstance(
- configuration);
- } catch (ClassNotFoundException e) {
- throw new ApplicationException("Unable to find authenticator class", e);
- } catch (IllegalArgumentException e) {
- throw new ApplicationException("IllegalArgumentException creating authenticator class", e);
- } catch (SecurityException e) {
- throw new ApplicationException("SecurityException creating authenticator class", e);
- } catch (InstantiationException e) {
- throw new ApplicationException("InstantiationException creating authenticator class", e);
- } catch (IllegalAccessException e) {
- throw new ApplicationException("IllegalAccessException creating authenticator class", e);
- } catch (InvocationTargetException e) {
- throw new ApplicationException("InvocationTargetException creating authenticator class", e);
- } catch (NoSuchMethodException e) {
- throw new ApplicationException("NoSuchMethodException creating authenticator class", e);
- }
+ }
+ try {
+ Class<?> authenticatorClass = Class.forName(className);
+ return (Authenticator) authenticatorClass.getConstructor(IsisConfiguration.class).newInstance(
+ configuration);
+ } catch (ClassNotFoundException e) {
+ throw new ApplicationException("Unable to find authenticator class", e);
+ } catch (IllegalArgumentException e) {
+ throw new ApplicationException("IllegalArgumentException creating authenticator class", e);
+ } catch (SecurityException e) {
+ throw new ApplicationException("SecurityException creating authenticator class", e);
+ } catch (InstantiationException e) {
+ throw new ApplicationException("InstantiationException creating authenticator class", e);
+ } catch (IllegalAccessException e) {
+ throw new ApplicationException("IllegalAccessException creating authenticator class", e);
+ } catch (InvocationTargetException e) {
+ throw new ApplicationException("InvocationTargetException creating authenticator class", e);
+ } catch (NoSuchMethodException e) {
+ throw new ApplicationException("NoSuchMethodException creating authenticator class", e);
}
}
Modified: incubator/isis/trunk/framework/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/components/BddAuthenticationManagerInstaller.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/components/BddAuthenticationManagerInstaller.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/components/BddAuthenticationManagerInstaller.java (original)
+++ incubator/isis/trunk/framework/viewer/bdd/common/src/main/java/org/apache/isis/viewer/bdd/common/components/BddAuthenticationManagerInstaller.java Tue Nov 29 08:00:38 2011
@@ -18,11 +18,15 @@
*/
package org.apache.isis.viewer.bdd.common.components;
+import java.util.List;
+
import org.apache.isis.core.commons.config.IsisConfiguration;
import org.apache.isis.core.runtime.authentication.standard.Authenticator;
import org.apache.isis.runtimes.dflt.runtime.authentication.AuthenticationManagerStandardInstallerAbstractForDfltRuntime;
import org.apache.isis.security.dflt.authentication.AuthenticatorNoop;
+import com.google.common.collect.Lists;
+
public class BddAuthenticationManagerInstaller extends AuthenticationManagerStandardInstallerAbstractForDfltRuntime {
public BddAuthenticationManagerInstaller() {
@@ -30,7 +34,7 @@ public class BddAuthenticationManagerIns
}
@Override
- protected Authenticator createAuthenticator(final IsisConfiguration configuration) {
- return new AuthenticatorNoop(configuration);
+ protected List<Authenticator> createAuthenticators(final IsisConfiguration configuration) {
+ return Lists.<Authenticator>newArrayList(new AuthenticatorNoop(configuration));
}
}
\ No newline at end of file
Modified: incubator/isis/trunk/framework/viewer/html/src/docbkx/guide/isis-html-viewer.xml
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/docbkx/guide/isis-html-viewer.xml?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/docbkx/guide/isis-html-viewer.xml (original)
+++ incubator/isis/trunk/framework/viewer/html/src/docbkx/guide/isis-html-viewer.xml Tue Nov 29 08:00:38 2011
@@ -151,6 +151,8 @@
<para></para>
+ <para></para>
+
<para>By default the htmlviewer uses ".app" as the suffix for its .
this can be changed using the viewer-html.suffix init-param in
web.xml:</para>
@@ -161,6 +163,10 @@
<para></para>
+ <para></para>
+
+ <para></para>
+
<programlisting><web.xml>
...
<context-param>
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/action/view/ObjectView.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/action/view/ObjectView.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/action/view/ObjectView.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/action/view/ObjectView.java Tue Nov 29 08:00:38 2011
@@ -27,7 +27,6 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.ObjectAssociation;
import org.apache.isis.core.metamodel.spec.feature.ObjectAssociationFilters;
-import org.apache.isis.runtimes.dflt.runtime.system.context.IsisContext;
import org.apache.isis.viewer.html.component.Block;
import org.apache.isis.viewer.html.component.Component;
import org.apache.isis.viewer.html.component.ComponentFactory;
@@ -36,6 +35,7 @@ import org.apache.isis.viewer.html.conte
import org.apache.isis.viewer.html.request.Request;
public class ObjectView extends ObjectViewAbstract {
+
@Override
protected boolean addObjectToHistory() {
return true;
@@ -57,7 +57,7 @@ public class ObjectView extends ObjectVi
boolean allFieldUneditable = true;
final List<ObjectAssociation> flds = specification.getAssociations();
for (int i = 0; i < flds.size(); i++) {
- if (flds.get(i).isUsable(IsisContext.getAuthenticationSession(), adapter).isAllowed()) {
+ if (flds.get(i).isUsable(getAuthenticationSession(), adapter).isAllowed()) {
allFieldUneditable = false;
break;
}
@@ -73,7 +73,7 @@ public class ObjectView extends ObjectVi
final ObjectSpecification specification = object.getSpecification();
final List<ObjectAssociation> visibleFields =
specification.getAssociations(ObjectAssociationFilters.dynamicallyVisible(
- IsisContext.getAuthenticationSession(), object));
+ getAuthenticationSession(), object));
for (int i = 0; i < visibleFields.size(); i++) {
final ObjectAssociation field = visibleFields.get(i);
@@ -82,7 +82,7 @@ public class ObjectView extends ObjectVi
fieldBlock.add(factory.createInlineBlock("label", field.getName(), null));
fieldBlock.add(factory.createInlineBlock("separator", ": ", null));
- IsisContext.getPersistenceSession().resolveField(object, field);
+ getPersistenceSession().resolveField(object, field);
// ordering is important here;
// look at parseable fields before objects
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/action/view/ObjectViewAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/action/view/ObjectViewAbstract.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/action/view/ObjectViewAbstract.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/action/view/ObjectViewAbstract.java Tue Nov 29 08:00:38 2011
@@ -19,8 +19,10 @@
package org.apache.isis.viewer.html.action.view;
+import org.apache.isis.core.commons.authentication.AuthenticationSession;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.runtimes.dflt.runtime.system.context.IsisContext;
+import org.apache.isis.runtimes.dflt.runtime.system.persistence.PersistenceSession;
import org.apache.isis.viewer.html.action.Action;
import org.apache.isis.viewer.html.action.ActionException;
import org.apache.isis.viewer.html.action.view.util.MenuUtil;
@@ -39,7 +41,7 @@ public abstract class ObjectViewAbstract
throw new ActionException("No such object: " + idString);
}
- IsisContext.getPersistenceSession().resolveImmediately(adapter);
+ getPersistenceSession().resolveImmediately(adapter);
page.setTitle(adapter.titleString());
@@ -76,4 +78,14 @@ public abstract class ObjectViewAbstract
protected boolean addObjectToHistory() {
return false;
}
+
+ protected AuthenticationSession getAuthenticationSession() {
+ return IsisContext.getAuthenticationSession();
+ }
+
+ protected PersistenceSession getPersistenceSession() {
+ return IsisContext.getPersistenceSession();
+ }
+
+
}
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/AbstractHtmlPage.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/AbstractHtmlPage.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/AbstractHtmlPage.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/AbstractHtmlPage.java Tue Nov 29 08:00:38 2011
@@ -88,7 +88,6 @@ public abstract class AbstractHtmlPage i
int i = 0;
while (st.hasMoreTokens()) {
final String style = st.nextToken().trim();
-
writer.print(" <link rel=\"");
if (i++ > 0) {
writer.print("alternate ");
@@ -97,6 +96,8 @@ public abstract class AbstractHtmlPage i
writer.print(style);
writer.println("\" type=\"text/css\" media=\"all\"/>");
}
+ writer.println(" <script src=\"jquery-1.7.1.js\" type=\"text/javascript\"></script>");
+ writer.println(" <script src=\"htmlviewer.js\" type=\"text/javascript\"></script>");
writer.println(" </head>");
writer.println(" <body onLoad=\"window.document.form.fld0.focus()\">");
writer.println(" <div id=\"wrapper\">");
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/HtmlComponentFactory.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/HtmlComponentFactory.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/HtmlComponentFactory.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/HtmlComponentFactory.java Tue Nov 29 08:00:38 2011
@@ -162,12 +162,12 @@ public class HtmlComponentFactory implem
return new DynamicHtmlPage(this, styleSheet, header, footer);
}
- public LogonFormPage createLogonPage(final String user, final String password) {
- return new LogonFormPage(this, styleSheet, header, footer, user, password);
+ public LogonFormPage createLogonPage(final String user, final String password, boolean registerLink, String error) {
+ return new LogonFormPage(this, styleSheet, header, footer, user, password, registerLink, error);
}
- public RegisterFormPage createRegisterPage(final String user, final String password) {
- return new RegisterFormPage(this, styleSheet, header, footer, user, password);
+ public RegisterFormPage createRegisterPage(final String user, final String password, String error) {
+ return new RegisterFormPage(this, styleSheet, header, footer, user, password, error);
}
@Override
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/LogonFormPage.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/LogonFormPage.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/LogonFormPage.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/LogonFormPage.java Tue Nov 29 08:00:38 2011
@@ -30,33 +30,40 @@ import org.apache.isis.viewer.html.compo
public class LogonFormPage extends AbstractHtmlPage {
private final String user;
private final String password;
+ private final boolean registerLink;
+ private final String error;
public LogonFormPage(final PathBuilder pathBuilder, final String styleSheet, final String header, final String footer,
- final String user, final String password) {
+ final String user, final String password, final boolean registerLink, final String error) {
super(pathBuilder, styleSheet, header, footer);
this.user = user;
this.password = password;
+ this.registerLink = registerLink;
+ this.error = error;
}
@Override
protected void writeContent(final PrintWriter writer) {
writer.println("<div id=\"view\">");
writer.println("<div class=\"header\">");
- if (user.equals("")) {
- writer.println("<span class=\"header-text\">Please enter a user name and password.</span>");
- } else {
- writer.println("<span class=\"header-text\">Please enter a valid user name and password.</span>");
- }
+ writer.println("<span class=\"header-text\">Please enter a user name and password.</span>");
writer.println("</div>");
writer.println("<FORM ACTION=\"" + pathTo("logon") + "\" METHOD=\"post\">");
writer.println("<div id=\"content\">");
+ if(error != null) {
+ writer.println("<div class=\"error\">");
+ writer.println(error);
+ writer.println("</div>");
+ }
writer.println("<div class=\"field\"><span class=\"label\">User name</span>"
+ "<span class=\"separator\">: </span><INPUT NAME=\"username\" value=\"" + user + "\"></DIV>");
writer.println("<div class=\"field\"><span class=\"label\">Password</span>"
+ "<span class=\"separator\">: </span><INPUT TYPE=\"password\" NAME=\"password\" value=\"" + password
+ "\"></DIV>");
writer.println("<div class=\"action-button\"><INPUT TYPE=\"submit\" VALUE=\"Log in\" NAME=\"Log in\"></div>");
- new Link(pathBuilder, "register", "register", "Register").write(writer);
+ if(registerLink) {
+ writer.print("<a class=\"link nav-link\" title=\"Register new user name and password\" href=\"" + pathTo("register") + "\">register</a>");
+ }
writer.println("</div>");
writer.println("</FORM>");
writer.println("</div>");
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/RegisterFormPage.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/RegisterFormPage.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/RegisterFormPage.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/RegisterFormPage.java Tue Nov 29 08:00:38 2011
@@ -30,12 +30,14 @@ import org.apache.isis.viewer.html.compo
public class RegisterFormPage extends AbstractHtmlPage {
private final String user;
private final String password;
+ private final String error;
public RegisterFormPage(final PathBuilder pathBuilder, final String styleSheet, final String header, final String footer,
- final String user, final String password) {
+ final String user, final String password, final String error) {
super(pathBuilder, styleSheet, header, footer);
this.user = user;
this.password = password;
+ this.error = error;
}
@Override
@@ -46,15 +48,21 @@ public class RegisterFormPage extends Ab
writer.println("</div>");
writer.println("<FORM ACTION=\"" + pathTo("register") + "\" METHOD=\"post\">");
writer.println("<div id=\"content\">");
+ if(error != null) {
+ writer.println("<div class=\"error\">");
+ writer.println(error);
+ writer.println("</div>");
+ }
writer.println("<div class=\"field\"><span class=\"label\">User name</span>"
+ "<span class=\"separator\">: </span><INPUT NAME=\"username\" value=\"" + user + "\"></DIV>");
writer.println("<div class=\"field\"><span class=\"label\">Password</span>"
+ "<span class=\"separator\">: </span><INPUT TYPE=\"password\" NAME=\"password\" value=\"" + password
+ "\"></DIV>");
writer.println("<div class=\"field\"><span class=\"label\">Password (again)</span>"
- + "<span class=\"separator\">: </span><INPUT TYPE=\"password2\" NAME=\"password2\" value=\"" + password
+ + "<span class=\"separator\">: </span><INPUT TYPE=\"password\" NAME=\"password2\" value=\"" + password
+ "\"></DIV>");
writer.println("<div class=\"action-button\"><INPUT TYPE=\"submit\" VALUE=\"Register\" NAME=\"Register\"></div>");
+ writer.print("<a class=\"link nav-link\" title=\"Back to the login page\" href=\"" + pathTo("login") + "\">back to login</a>");
writer.println("</div>");
writer.println("</FORM>");
writer.println("</div>");
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/ViewDiv.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/ViewDiv.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/ViewDiv.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/component/html/ViewDiv.java Tue Nov 29 08:00:38 2011
@@ -72,7 +72,6 @@ public class ViewDiv extends ComponentCo
@Override
protected void writeBefore(final PrintWriter writer) {
writer.println("<div id=\"view\">");
- writeMessages(writer);
writeHeader(writer);
writeMenu(writer);
writer.println("<div id=\"content\">");
@@ -82,6 +81,7 @@ public class ViewDiv extends ComponentCo
protected void writeAfter(final PrintWriter writer) {
writer.println("</div>");
writer.println("</div>");
+ writeMessages(writer);
}
private void writeMessages(final PrintWriter writer) {
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/servlet/LogonServlet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/servlet/LogonServlet.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/servlet/LogonServlet.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/servlet/LogonServlet.java Tue Nov 29 08:00:38 2011
@@ -29,6 +29,7 @@ import javax.servlet.http.HttpSession;
import org.apache.isis.core.commons.authentication.AuthenticationSession;
import org.apache.isis.core.runtime.authentication.AuthenticationRequest;
import org.apache.isis.core.runtime.authentication.AuthenticationRequestPassword;
+import org.apache.isis.core.runtime.authentication.standard.RegistrationDetailsPassword;
import org.apache.isis.runtimes.dflt.monitoring.servermonitor.Monitor;
import org.apache.isis.runtimes.dflt.runtime.authentication.exploration.AuthenticationRequestExploration;
import org.apache.isis.runtimes.dflt.runtime.system.DeploymentType;
@@ -75,14 +76,14 @@ public class LogonServlet extends Abstra
final String user = request.getParameter("username");
final String password = request.getParameter("password");
if (user == null && !getDeploymentType().isExploring()) {
- renderPrompt(response, "", "", "");
+ renderPrompt(response, "", "", null);
return;
}
// authenticate; re-prompt if required
final AuthenticationSession authSession = authenticate(user, password);
if (authSession == null) {
- renderPrompt(response, user, password, "error");
+ renderPrompt(response, user, password, "user/password invalid");
return;
}
@@ -105,10 +106,11 @@ public class LogonServlet extends Abstra
private void renderPrompt(
final HttpServletResponse response,
final String user, final String password,
- final String message) throws IOException {
+ final String error) throws IOException {
response.setContentType("text/html");
final HtmlComponentFactory factory = new HtmlComponentFactory(getPathBuilder());
- final LogonFormPage page = factory.createLogonPage(user, password);
+ boolean registerLink = getAuthenticationManager().supportsRegistration(RegistrationDetailsPassword.class);
+ final LogonFormPage page = factory.createLogonPage(user, password, registerLink, error);
page.write(response.getWriter());
}
Modified: incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/servlet/RegisterServlet.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/servlet/RegisterServlet.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/servlet/RegisterServlet.java (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/java/org/apache/isis/viewer/html/servlet/RegisterServlet.java Tue Nov 29 08:00:38 2011
@@ -34,6 +34,8 @@ import org.apache.isis.viewer.html.compo
import org.apache.isis.viewer.html.component.html.RegisterFormPage;
import org.apache.log4j.Logger;
+import com.google.common.base.Objects;
+
public class RegisterServlet extends AbstractHtmlViewerServlet {
private static final long serialVersionUID = 1L;
@@ -67,9 +69,15 @@ public class RegisterServlet extends Abs
}
// register; re-prompt if required
+ if (!Objects.equal(password, password2)) {
+ renderPrompt(response, user, "", "", "passwords don't match");
+ return;
+ }
+
+ // register; re-prompt if required
final boolean registered = register(user, password, password2);
if (!registered) {
- renderPrompt(response, user, password, password2, "error");
+ renderPrompt(response, user, "", "", "user name already taken");
return;
}
@@ -88,7 +96,7 @@ public class RegisterServlet extends Abs
final String message) throws IOException {
response.setContentType("text/html");
final HtmlComponentFactory factory = new HtmlComponentFactory(getPathBuilder());
- final RegisterFormPage page = factory.createRegisterPage(user, password);
+ final RegisterFormPage page = factory.createRegisterPage(user, password, message);
page.write(response.getWriter());
}
Modified: incubator/isis/trunk/framework/viewer/html/src/main/resources/default.css
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/resources/default.css?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/resources/default.css (original)
+++ incubator/isis/trunk/framework/viewer/html/src/main/resources/default.css Tue Nov 29 08:00:38 2011
@@ -425,7 +425,7 @@ DIV#body DIV#view {
/* Start of Message Header */
DIV.message-header {
position: relative;
- top: 10px;
+ top: 40px;
padding: 5px 25px 5px 25px;
margin: 0 50px 0 255px;
vertical-align: middle;
@@ -930,4 +930,10 @@ SPAN.about {
SPAN.user {
display: block;
padding: 4px;
-}
+}
+
+.nav-link {
+ display: block;
+ padding: 10px;
+ font-size: 75%;
+}
\ No newline at end of file
Added: incubator/isis/trunk/framework/viewer/html/src/main/resources/htmlviewer.js
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/html/src/main/resources/htmlviewer.js?rev=1207775&view=auto
==============================================================================
--- incubator/isis/trunk/framework/viewer/html/src/main/resources/htmlviewer.js (added)
+++ incubator/isis/trunk/framework/viewer/html/src/main/resources/htmlviewer.js Tue Nov 29 08:00:38 2011
@@ -0,0 +1,22 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+$(document).ready(function()
+{
+ $(".message-header").fadeOut(2000)
+});
\ No newline at end of file
Modified: incubator/isis/trunk/framework/viewer/wicket/wicket-viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketUnsecuredApplication.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/wicket/wicket-viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketUnsecuredApplication.java?rev=1207775&r1=1207774&r2=1207775&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/wicket/wicket-viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketUnsecuredApplication.java (original)
+++ incubator/isis/trunk/framework/viewer/wicket/wicket-viewer/src/main/java/org/apache/isis/viewer/wicket/viewer/IsisWicketUnsecuredApplication.java Tue Nov 29 08:00:38 2011
@@ -200,12 +200,12 @@ public class IsisWicketUnsecuredApplicat
new AuthenticationManagerStandard(configuration);
authenticationManager.addAuthenticator(new AuthenticatorAbstract(configuration) {
@Override
- public boolean canAuthenticate(final AuthenticationRequest request) {
+ public boolean isValid(final AuthenticationRequest request) {
return true;
}
@Override
- public boolean isValid(final AuthenticationRequest request) {
+ public boolean canAuthenticate(Class<? extends AuthenticationRequest> authenticationRequestClass) {
return true;
}
});