You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by aj...@apache.org on 2009/01/13 07:06:52 UTC

svn commit: r734048 [1/2] - in /incubator/jspwiki/trunk: ./ etc/i18n/ src/com/ecyrd/jspwiki/ src/com/ecyrd/jspwiki/action/ src/com/ecyrd/jspwiki/auth/ src/com/ecyrd/jspwiki/auth/login/ src/com/ecyrd/jspwiki/preferences/ src/com/ecyrd/jspwiki/ui/admin/ ...

Author: ajaquith
Date: Mon Jan 12 22:06:39 2009
New Revision: 734048

URL: http://svn.apache.org/viewvc?rev=734048&view=rev
Log:
Localized UserDatabaseLoginModule so that it throws errors in the user's correct Locale. Changed the stop-the-presses RuntimeExceptions thrown by AdminBeanManager to an (milder) error that is logged. Halting the WikiEngine was proving to be too aggressive in test situations. Fixed b0rked jspwiki.css.

Added:
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/LocaleCallback.java
Modified:
    incubator/jspwiki/trunk/ChangeLog
    incubator/jspwiki/trunk/etc/i18n/CoreResources.properties
    incubator/jspwiki/trunk/etc/i18n/CoreResources_de.properties
    incubator/jspwiki/trunk/etc/i18n/CoreResources_nl.properties
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/Release.java
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/LoginActionBean.java
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/package.html
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/AuthenticationManager.java
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/UserDatabaseLoginModule.java
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/WikiCallbackHandler.java
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/preferences/Preferences.java
    incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/ui/admin/AdminBeanManager.java
    incubator/jspwiki/trunk/src/webdocs/templates/default/jspwiki.css
    incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/UserDatabaseLoginModuleTest.java

Modified: incubator/jspwiki/trunk/ChangeLog
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/ChangeLog?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/ChangeLog (original)
+++ incubator/jspwiki/trunk/ChangeLog Mon Jan 12 22:06:39 2009
@@ -1,4 +1,17 @@
-2009-01-12 Florian Holeczek <fl...@apache.org>
+202009-01-13  Andrew Jaquith <ajaquith AT apache DOT org>
+
+        * 3.0.0-svn-50
+
+        * Localized UserDatabaseLoginModule so that it throws errors in the
+        user's correct Locale.
+
+        * Changed the stop-the-presses RuntimeExceptions thrown by
+        AdminBeanManager to an (milder) error that is logged. Halting the
+        WikiEngine was proving to be too aggressive in test situations.
+
+        * Fixed b0rked jspwiki.css.
+
+09-01-12 Florian Holeczek <fl...@apache.org>
 
         * 3.0.0-svn-49
 

Modified: incubator/jspwiki/trunk/etc/i18n/CoreResources.properties
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/etc/i18n/CoreResources.properties?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/etc/i18n/CoreResources.properties (original)
+++ incubator/jspwiki/trunk/etc/i18n/CoreResources.properties Mon Jan 12 22:06:39 2009
@@ -57,9 +57,8 @@
 
 # Login.jsp  
 #login.error.capslock=Invalid login (please check your Caps Lock key) #obsolete
-login.error.password=Not a valid login.
+login.error.password=The username or password is incorrect.
 login.error.noaccess=It seems you don't have access to that. Sorry.
-login.error=Login failed: {2}
 
 # Lostpassword.jsp
 

Modified: incubator/jspwiki/trunk/etc/i18n/CoreResources_de.properties
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/etc/i18n/CoreResources_de.properties?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/etc/i18n/CoreResources_de.properties (original)
+++ incubator/jspwiki/trunk/etc/i18n/CoreResources_de.properties Mon Jan 12 22:06:39 2009
@@ -67,7 +67,6 @@
 
 login.error.password=Ungültiges Passwort!
 login.error.noaccess=Du hast offenbar keine Berechtigung hierzu. Sorry!
-login.error=Anmeldung fehlgeschlagen: {2}
 
 # Lostpassword.jsp
 

Modified: incubator/jspwiki/trunk/etc/i18n/CoreResources_nl.properties
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/etc/i18n/CoreResources_nl.properties?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/etc/i18n/CoreResources_nl.properties (original)
+++ incubator/jspwiki/trunk/etc/i18n/CoreResources_nl.properties Mon Jan 12 22:06:39 2009
@@ -59,7 +59,7 @@
 
 # Login.jsp  
 login.error.password=Geen geldige login.
-login.error.noaccess=U heeft geen toegang tot deze informatie.Sorry.
+login.error.noaccess=U heeft geen toegang tot deze informatie. Sorry.
 
 # Lostpassword.jsp
   

Modified: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/Release.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/Release.java?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/Release.java (original)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/Release.java Mon Jan 12 22:06:39 2009
@@ -77,7 +77,7 @@
      *  <p>
      *  If the build identifier is empty, it is not added.
      */
-    public static final String     BUILD         = "49";
+    public static final String     BUILD         = "50";
     
     /**
      *  This is the generic version string you should use

Modified: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/LoginActionBean.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/LoginActionBean.java?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/LoginActionBean.java (original)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/LoginActionBean.java Mon Jan 12 22:06:39 2009
@@ -2,6 +2,7 @@
 
 import java.security.Principal;
 import java.text.MessageFormat;
+import java.util.Locale;
 import java.util.ResourceBundle;
 
 import javax.mail.AuthenticationFailedException;
@@ -111,24 +112,28 @@
     {
         WikiSession wikiSession = getContext().getWikiSession();
         ValidationErrors errors = getContext().getValidationErrors();
+        Locale locale = getContext().getLocale();
 
         log.debug( "Attempting to authenticate user " + m_username );
 
         // Log the user in!
         try
         {
-            if( !getContext().getEngine().getAuthenticationManager().login( wikiSession, m_username, m_password ) )
+            if( !getContext().getEngine().getAuthenticationManager().login( wikiSession, locale, m_username, m_password ) )
             {
             }
         }
         catch ( LoginException e )
         {
+        	// Message is already localized
             log.info( "Failed to authenticate user " + m_username + ", reason: " + e.getMessage());
-            errors.addGlobalError( new LocalizableError( "login.error.password" ) );
+            errors.addGlobalError( new SimpleError( e.getMessage() ) );
         }
         catch( WikiSecurityException e )
         {
-            errors.addGlobalError( new LocalizableError( "login.error", e.getMessage() ) );
+        	// Message is already localized
+            log.info( "Failed to authenticate user " + m_username + ", reason: " + e.getMessage());
+            errors.addGlobalError( new SimpleError( e.getMessage() ) );
         }
     }
 

Modified: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/package.html
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/package.html?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/package.html (original)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/action/package.html Mon Jan 12 22:06:39 2009
@@ -90,7 +90,7 @@
 {@link
 com.ecyrd.jspwiki.ui.stripes.WikiActionBeanContext#getWikiSession()}.</p>
 WikiActionBeanContext also implements the {@link
-org.apache.jspwiki.api.WikiContext} interface, so any methods that
+com.ecyrd.jspwiki.WikiContext} interface, so any methods that
 normally operate on WikiContext will work with WikiActionBeanContext
 also.
 <em>Note: WikiActionBean method {@link

Modified: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/AuthenticationManager.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/AuthenticationManager.java?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/AuthenticationManager.java (original)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/AuthenticationManager.java Mon Jan 12 22:06:39 2009
@@ -369,6 +369,27 @@
     
     /**
      * Attempts to perform a WikiSession login for the given username/password
+     * combination using JSPWiki's custom authentication mode, using the system default Locale.
+     * The operation is otherwise identical to {@link #login(WikiSession, Locale, String, String)}.
+     * @param session the current wiki session; may not be <code>null</code>.
+     * @param username The user name
+     * @param password the password
+     * @return <code>true</code> if the username/password is valid; <code>false</code>
+     *             if the LoginModule should be ignored, or the WikiSession was <code>null</code>
+     * @throws LoginException
+     *             if the LoginModule's <code>login()</code> or <code>commit()</code> phases
+     *             failed for any reason, including invalid credentials.
+     * @throws WikiSecurityException
+     *             if the login failed for any other reason. The root-cause exception can
+     *             be retrieved via {@link java.lang.Throwable#getCause()}
+     */
+    public final boolean login( WikiSession session, String username, String password ) throws WikiSecurityException, LoginException
+    {
+        return login( session, Locale.getDefault(), username, password );
+    }
+
+    /**
+     * Attempts to perform a WikiSession login for the given username/password
      * combination using JSPWiki's custom authentication mode. In order to log in,
      * the JAAS LoginModule supplied by the WikiEngine property {@link #PROP_LOGIN_MODULE}
      * will be instantiated, and its
@@ -391,7 +412,7 @@
      *             if the login failed for any other reason. The root-cause exception can
      *             be retrieved via {@link java.lang.Throwable#getCause()}
      */
-    public final boolean login( WikiSession session, String username, String password ) throws WikiSecurityException, LoginException
+    public final boolean login( WikiSession session, Locale locale, String username, String password ) throws WikiSecurityException, LoginException
     {
         if ( session == null )
         {
@@ -405,9 +426,9 @@
             delayLogin(username);
         }
         
-        UserManager userMgr = m_engine.getUserManager();
         CallbackHandler handler = new WikiCallbackHandler(
-                userMgr.getUserDatabase(),
+                m_engine,
+                locale,
                 username,
                 password );
         

Added: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/LocaleCallback.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/LocaleCallback.java?rev=734048&view=auto
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/LocaleCallback.java (added)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/LocaleCallback.java Mon Jan 12 22:06:39 2009
@@ -0,0 +1,58 @@
+/* 
+    JSPWiki - a JSP-based WikiWiki clone.
+
+    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.  
+ */
+package com.ecyrd.jspwiki.auth.login;
+
+import java.util.Locale;
+
+import javax.security.auth.callback.Callback;
+
+/**
+ * Callback for requesting and supplying a {@link java.util.Locale}. This callback is
+ * used by LoginModules that need access to a Locale for creating localized
+ * messages.
+ * @author Andrew Jaquith
+ * @since 3.0
+ */
+public class LocaleCallback implements Callback
+{
+
+    private Locale m_locale;
+
+    /**
+     * Returns the Locale. LoginModules call this method after a
+     * CallbackHandler sets the Locale.
+     * @return the locale
+     */
+    public Locale getLocale()
+    {
+        return m_locale;
+    }
+
+    /**
+     * Sets the Locale. CallbackHandler objects call this method.
+     * @param locale the user locale
+     */
+    public void setLocale( Locale locale )
+    {
+        m_locale = locale;
+    }
+
+}

Modified: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/UserDatabaseLoginModule.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/UserDatabaseLoginModule.java?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/UserDatabaseLoginModule.java (original)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/UserDatabaseLoginModule.java Mon Jan 12 22:06:39 2009
@@ -21,6 +21,7 @@
 package com.ecyrd.jspwiki.auth.login;
 
 import java.io.IOException;
+import java.util.Locale;
 
 import javax.security.auth.callback.Callback;
 import javax.security.auth.callback.NameCallback;
@@ -29,13 +30,14 @@
 import javax.security.auth.login.FailedLoginException;
 import javax.security.auth.login.LoginException;
 
-import com.ecyrd.jspwiki.log.Logger;
-import com.ecyrd.jspwiki.log.LoggerFactory;
-
+import com.ecyrd.jspwiki.WikiEngine;
 import com.ecyrd.jspwiki.auth.NoSuchPrincipalException;
 import com.ecyrd.jspwiki.auth.WikiPrincipal;
 import com.ecyrd.jspwiki.auth.user.UserDatabase;
 import com.ecyrd.jspwiki.auth.user.UserProfile;
+import com.ecyrd.jspwiki.i18n.InternationalizationManager;
+import com.ecyrd.jspwiki.log.Logger;
+import com.ecyrd.jspwiki.log.LoggerFactory;
 
 /**
  * <p>
@@ -48,8 +50,13 @@
  * username</li>
  * <li>{@link javax.security.auth.callback.PasswordCallback}- supplies the
  * password</li>
- * <li>{@link com.ecyrd.jspwiki.auth.login.UserDatabaseCallback}- supplies the
- * {@link com.ecyrd.jspwiki.auth.user.UserDatabase}</li>
+ * <li>{@link com.ecyrd.jspwiki.auth.login.LocaleCallback}- supplies the
+ * HTTP request, from which the user's {@link java.util.Locale} is obtained
+ * (used for constructing localized error messages)</li>
+ * <li>{@link com.ecyrd.jspwiki.auth.login.WikiEngineCallback}- supplies the
+ * {@link com.ecyrd.jspwiki.WikiEngine}, from which the
+ * {@link com.ecyrd.jspwiki.i18n.InternationalizationManager} is obtained
+ * (used for constructing localized error messages)</li>
  * </ol>
  * <p>
  * After authentication, a Principals based on the login name will be created
@@ -64,30 +71,48 @@
     private static final Logger log = LoggerFactory.getLogger( UserDatabaseLoginModule.class );
 
     /**
-     * @see javax.security.auth.spi.LoginModule#login()
-     * 
-     * {@inheritDoc}
+     *      {@inheritDoc}
+     *      <p>Note: this method will throw a
+     *      {@link javax.security.auth.login.FailedLoginException} if the
+     *      username or password does not match what is contained in the
+     *      database. The text of this message will be looked up in the
+     *      {@link com.ecyrd.jspwiki.i18n.InternationalizationManager#CORE_BUNDLE}
+     *      using the key <code>login.error.password</code>. Any other
+     *      Exceptions thrown by this method will <em>not</em> be localized,
+     *      because they represent exceptional error conditions that should not
+     *      occur unless the wiki is configured incorrectly.</p>
      */
     public boolean login() throws LoginException
     {
-        UserDatabaseCallback ucb = new UserDatabaseCallback();
         NameCallback ncb = new NameCallback( "User name" );
         PasswordCallback pcb = new PasswordCallback( "Password", false );
-        Callback[] callbacks = new Callback[]
-        { ucb, ncb, pcb };
+        LocaleCallback lcb = new LocaleCallback();
+        WikiEngineCallback wcb = new WikiEngineCallback();
+        Callback[] callbacks = new Callback[] { ncb, pcb, lcb, wcb };
         try
         {
             m_handler.handle( callbacks );
-            UserDatabase db = ucb.getUserDatabase();
             String username = ncb.getName();
             String password = new String( pcb.getPassword() );
+            Locale locale = lcb.getLocale();
+            WikiEngine engine = wcb.getEngine();
+            UserDatabase db = engine.getUserManager().getUserDatabase();
+            InternationalizationManager i18n = engine.getInternationalizationManager();
 
             // Look up the user and compare the password hash
             if ( db == null )
             {
-                throw new FailedLoginException( "No user database: check the callback handler code!" );
+                throw new LoginException( "No user database: check the callback handler code!" );
+            }
+            UserProfile profile;
+            try
+            {
+                profile = db.findByLoginName( username );
+            }
+            catch( NoSuchPrincipalException e )
+            {
+                throw new FailedLoginException( i18n.get( InternationalizationManager.CORE_BUNDLE, locale, "login.error.password" ) );
             }
-            UserProfile profile = db.findByLoginName( username );
             String storedPassword = profile.getPassword();
             if ( storedPassword != null && db.validatePassword( username, password ) )
             {
@@ -101,7 +126,7 @@
 
                 return true;
             }
-            throw new FailedLoginException( "The username or password is incorrect." );
+            throw new FailedLoginException( i18n.get( InternationalizationManager.CORE_BUNDLE, locale, "login.error.password" ) );
         }
         catch( IOException e )
         {
@@ -115,10 +140,6 @@
             log.error( message, e );
             throw new LoginException( message );
         }
-        catch( NoSuchPrincipalException e )
-        {
-            throw new FailedLoginException( "The username or password is incorrect." );
-        }
     }
 
 }

Modified: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/WikiCallbackHandler.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/WikiCallbackHandler.java?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/WikiCallbackHandler.java (original)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/auth/login/WikiCallbackHandler.java Mon Jan 12 22:06:39 2009
@@ -21,11 +21,12 @@
 package com.ecyrd.jspwiki.auth.login;
 
 import java.io.IOException;
+import java.util.Locale;
 
 import javax.security.auth.callback.*;
 
+import com.ecyrd.jspwiki.WikiEngine;
 import com.ecyrd.jspwiki.WikiSession;
-import com.ecyrd.jspwiki.auth.user.UserDatabase;
 import com.ecyrd.jspwiki.log.Logger;
 import com.ecyrd.jspwiki.log.LoggerFactory;
 
@@ -34,7 +35,7 @@
  * container. This handler is instantiated in
  * {@link com.ecyrd.jspwiki.auth.AuthenticationManager#login(WikiSession, String, String)}.
  * If container-managed authentication is used, the
- * {@link WebContainerCallbackHandler}is used instead. This callback handler is
+ * {@link WebContainerCallbackHandler} is used instead. This callback handler is
  * designed to be used with {@link UserDatabaseLoginModule}.
  * @author Andrew Jaquith
  * @since 2.3
@@ -43,22 +44,26 @@
 {
     private static final Logger log = LoggerFactory.getLogger(WikiCallbackHandler.class);
 
-    private final UserDatabase m_database;
+    private final WikiEngine m_engine;
 
     private final String       m_password;
 
     private final String       m_username;
+    
+    private final Locale      m_locale;
 
     /**
      *  Create a new callback handler.
      *  
-     *  @param database The Userdatabase to use
-     *  @param username The username
-     *  @param password The password
+     *  @param engine the WikiEngine for this wiki
+     *  @param locale the Locale to use, for localizing messages
+     *  @param username the username
+     *  @param password the password
      */
-    public WikiCallbackHandler( UserDatabase database, String username, String password )
+    public WikiCallbackHandler( WikiEngine engine, Locale locale, String username, String password )
     {
-        m_database = database;
+        m_engine = engine;
+        m_locale = locale;
         m_username = username;
         m_password = password;
     }
@@ -73,9 +78,9 @@
         for( int i = 0; i < callbacks.length; i++ )
         {
             Callback callback = callbacks[i];
-            if ( callback instanceof UserDatabaseCallback )
+            if ( callback instanceof WikiEngineCallback )
             {
-                ( (UserDatabaseCallback) callback ).setUserDatabase( m_database );
+                ( (WikiEngineCallback) callback ).setEngine( m_engine );
             }
             else if ( callback instanceof NameCallback )
             {
@@ -85,6 +90,10 @@
             {
                 ( (PasswordCallback) callback ).setPassword( m_password.toCharArray() );
             }
+            else if ( callback instanceof LocaleCallback )
+            {
+                ( (LocaleCallback) callback ).setLocale( m_locale );
+            }
             else if( callbacks[i] instanceof TextOutputCallback )
             {
                 TextOutputCallback textOutputCb = (TextOutputCallback) callbacks[i];

Modified: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/preferences/Preferences.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/preferences/Preferences.java?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/preferences/Preferences.java (original)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/preferences/Preferences.java Mon Jan 12 22:06:39 2009
@@ -407,14 +407,4 @@
         }
         return cookieValue == null ? defaultValue : cookieValue;
     }
-
-    public static void main( String[] args )
-    {
-        Orientation r = Orientation.LEFT;
-        System.out.println( r.toString() );
-        System.out.println( r.name() );
-        r = Orientation.valueOf( "LEFT" );
-        System.out.println( r.name() );
-        r = Orientation.valueOf( "foo" );
-    }
 }

Modified: incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/ui/admin/AdminBeanManager.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/ui/admin/AdminBeanManager.java?rev=734048&r1=734047&r2=734048&view=diff
==============================================================================
--- incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/ui/admin/AdminBeanManager.java (original)
+++ incubator/jspwiki/trunk/src/com/ecyrd/jspwiki/ui/admin/AdminBeanManager.java Mon Jan 12 22:06:39 2009
@@ -116,9 +116,9 @@
                 }
                 else
                 {
-                    throw new RuntimeException( "JMX bean named " + name +
-                                                " is already registered. Hint: are you running 2 webapps with the same " +
-                                                WikiEngine.PROP_APPNAME + "?" );
+                    log.error( "JMX bean named " + name + 
+                               " is already registered. Hint: are you running 2 webapps with the same " +
+                               WikiEngine.PROP_APPNAME + "?" );
                 }
             }