[exo-jcr-commits] exo-jcr SVN: r3521 - in jcr/trunk: applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole and 1 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Tue Nov 23 04:32:14 EST 2010
Author: tolusha
Date: 2010-11-23 04:32:11 -0500 (Tue, 23 Nov 2010)
New Revision: 3521
Modified:
jcr/trunk/applications/exo.jcr.applications.backupconsole/pom.xml
jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/BackupClientImpl.java
jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/BackupConsole.java
jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/ClientTransportImpl.java
jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/backup-client.xml
Log:
EXOJCR-1069: Backup console throws NPE if backup agent isn't deployed on server
Modified: jcr/trunk/applications/exo.jcr.applications.backupconsole/pom.xml
===================================================================
--- jcr/trunk/applications/exo.jcr.applications.backupconsole/pom.xml 2010-11-23 09:29:59 UTC (rev 3520)
+++ jcr/trunk/applications/exo.jcr.applications.backupconsole/pom.xml 2010-11-23 09:32:11 UTC (rev 3521)
@@ -62,6 +62,7 @@
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
+ <scope>runtime</scope>
</dependency>
</dependencies>
<build>
Modified: jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/BackupClientImpl.java
===================================================================
--- jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/BackupClientImpl.java 2010-11-23 09:29:59 UTC (rev 3520)
+++ jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/BackupClientImpl.java 2010-11-23 09:32:11 UTC (rev 3521)
@@ -18,14 +18,6 @@
*/
package org.exoplatform.jcr.backupconsole;
-import java.io.ByteArrayInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
-
-import javax.ws.rs.core.Response;
-
import org.exoplatform.services.jcr.config.RepositoryConfigurationException;
import org.exoplatform.services.jcr.config.RepositoryEntry;
import org.exoplatform.services.jcr.config.RepositoryServiceConfiguration;
@@ -55,6 +47,14 @@
import org.jibx.runtime.IUnmarshallingContext;
import org.jibx.runtime.JiBXException;
+import java.io.ByteArrayInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
+
+import javax.ws.rs.core.Response;
+
/**
* Created by The eXo Platform SAS. <br/>Date:
*
@@ -323,7 +323,7 @@
+ (info.getWorkspaceName().equals("") ? "" : "\t\tworkspace name : "
+ info.getWorkspaceName() + "\n")
+ "\t\tbackup type : "
- + (configBean.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremetal"
+ + (configBean.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremental"
: "full only") + "\n" + "\t\tstarted time : " + info.getStartedTime()
+ "\n" + (info.getFinishedTime().equals("") ? "\n" : "\t\tfinished time : "
+ info.getFinishedTime() + "\n\n"));
@@ -349,7 +349,7 @@
+ (info.getWorkspaceName().equals("") ? "" : "\t\tworkspace name : "
+ info.getWorkspaceName() + "\n")
+ "\t\tbackup type : "
- + (configBean.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremetal"
+ + (configBean.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremental"
: "full only") + "\n" + "\t\tfull backup state : " + (info
.getWorkspaceName().equals("") ? getRepositoryBackupToFullState(info.getState())
: getState(info.getState())))
@@ -613,7 +613,8 @@
String result =
"\nThe backup service information : \n" + "\tfull backup type : "
- + info.getFullBackupType() + "\n" + "\tincremetal backup type : "
+ + info.getFullBackupType()
+ + "\n" + "\tincremental backup type : "
+ info.getIncrementalBackupType() + "\n" + "\tbackup log folder : "
+ info.getBackupLogDir() + "\n" + "\tdefault incremental job period : "
+ info.getDefaultIncrementalJobPeriod() + "\n\n";
@@ -680,7 +681,7 @@
+ shortInfo.getRepositoryName()
+ "\n"
+ "\t\tbackup type : "
- + (shortInfo.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremetal"
+ + (shortInfo.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremental"
: "full only") + "\n" + "\t\tfull backups state : " + getRepositoryBackupToFullState(shortInfo
.getState()))
+ "\n"
@@ -706,7 +707,7 @@
+ shortInfo.getWorkspaceName()
+ "\n"
+ "\t\tbackup type : "
- + (shortInfo.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremetal"
+ + (shortInfo.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremental"
: "full only") + "\n" + "\t\tfull backup state : " + getState(shortInfo
.getState()))
+ "\n"
@@ -782,7 +783,7 @@
+ shortInfo.getRepositoryName()
+ "\n"
+ "\t\tbackup type : "
- + (shortInfo.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremetal"
+ + (shortInfo.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremental"
: "full only") + "\n" + "\t\tstarted time : "
+ shortInfo.getStartedTime() + "\n" + (shortInfo.getFinishedTime().equals("") ? "\n"
: "\t\tfinished time : " + shortInfo.getFinishedTime() + "\n"));
@@ -801,7 +802,7 @@
+ shortInfo.getWorkspaceName()
+ "\n"
+ "\t\tbackup type : "
- + (shortInfo.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremetal"
+ + (shortInfo.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremental"
: "full only") + "\n" + "\t\tstarted time : "
+ shortInfo.getStartedTime() + "\n" + (shortInfo.getFinishedTime().equals("") ? "\n"
: "\t\tfinished time : " + shortInfo.getFinishedTime() + "\n"));
@@ -858,7 +859,7 @@
+ info.getWorkspaceName()
+ "\n"
+ "\t\tbackup type : "
- + (configBean.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremetal"
+ + (configBean.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremental"
: "full only") + "\n" + "\t\trestore state : "
+ getRestoreState(info.getState()) + "\n" + "\t\tstarted time : "
+ info.getStartedTime() + "\n" + (info.getFinishedTime().equals("") ? "\n"
@@ -906,7 +907,7 @@
+ info.getRepositoryName()
+ "\n"
+ "\t\tbackup type : "
- + (configBean.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremetal"
+ + (configBean.getBackupType() == BackupManager.FULL_AND_INCREMENTAL ? "full + incremental"
: "full only") + "\n" + "\t\trestore state : "
+ getRepositoryRestoreState(info.getState()) + "\n" + "\t\tstarted time : "
+ info.getStartedTime() + "\n" + (info.getFinishedTime().equals("") ? "\n"
Modified: jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/BackupConsole.java
===================================================================
--- jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/BackupConsole.java 2010-11-23 09:29:59 UTC (rev 3520)
+++ jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/BackupConsole.java 2010-11-23 09:32:11 UTC (rev 3521)
@@ -65,7 +65,7 @@
+ " <form auth parm> : form <method> <form path>\n"
+ " <method> : POST or GET\n"
+ " <form path> : /path/path?<paramName1>=<paramValue1>&<paramName2>=<paramValue2>...\n"
- + " Example to <url form authentication> : http://127.0.0.1:8080/portal/rest form POST /portal/login?username=root&password=gtn\n\n"
+ + " Example to <url form authentication> : http://127.0.0.1:8080/portal/rest form POST \"/portal/login?username=root&password=gtn\"\n\n"
+ " <cmd> : start <repo[/ws]> <backup_dir> [<incr>] \n"
+ " stop <backup_id> \n"
Modified: jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/ClientTransportImpl.java
===================================================================
--- jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/ClientTransportImpl.java 2010-11-23 09:29:59 UTC (rev 3520)
+++ jcr/trunk/applications/exo.jcr.applications.backupconsole/src/main/java/org/exoplatform/jcr/backupconsole/ClientTransportImpl.java 2010-11-23 09:32:11 UTC (rev 3521)
@@ -18,11 +18,6 @@
*/
package org.exoplatform.jcr.backupconsole;
-import java.io.IOException;
-import java.net.URL;
-
-import javax.ws.rs.core.Response;
-
import org.exoplatform.common.http.client.AuthorizationHandler;
import org.exoplatform.common.http.client.AuthorizationInfo;
import org.exoplatform.common.http.client.CookieModule;
@@ -31,6 +26,11 @@
import org.exoplatform.common.http.client.ModuleException;
import org.exoplatform.common.http.client.NVPair;
+import java.io.IOException;
+import java.net.URL;
+
+import javax.ws.rs.core.Response;
+
/**
* Created by The eXo Platform SAS. <br/>Date:
*
@@ -61,14 +61,9 @@
private final String protocol;
/**
- * Is realm get.
- */
- private boolean isRealmGet = false;
-
- /**
* Realm to connection
*/
- private String realm;
+ private String realm = null;
/**
* Form authentication parameters.
@@ -108,7 +103,7 @@
* Get realm by URL.
*
* @param sUrl URL string.
- * @return realm name string.
+ * @return realm name or null.
* @throws IOException transport exception.
* @throws ModuleException ModuleException.
*/
@@ -127,6 +122,10 @@
HTTPResponse resp = connection.Get(url.getFile());
String authHeader = resp.getHeader("WWW-Authenticate");
+ if (authHeader == null)
+ {
+ return null;
+ }
String realm = authHeader.split("=")[1];
realm = realm.substring(1, realm.length() - 1);
@@ -190,10 +189,14 @@
else
{
// basic authorization
- if (!isRealmGet)
+ if (realm == null)
{
realm = getRealm(complURL);
- isRealmGet = true;
+ if (realm == null)
+ {
+ throw new BackupExecuteException(
+ "Can not connect to server using basic authentication. Try to use form authentication.");
+ }
}
connection.addBasicAuthorization(realm, login, password);
@@ -220,7 +223,6 @@
{
throw new BackupExecuteException(e.getMessage(), e);
}
-
}
/**
@@ -273,10 +275,14 @@
else
{
// basic authorization
- if (!isRealmGet)
+ if (realm == null)
{
realm = getRealm(complURL);
- isRealmGet = true;
+ if (realm == null)
+ {
+ throw new BackupExecuteException(
+ "Can not connect to server using basic authentication. Try to use form authentication.");
+ }
}
connection.addBasicAuthorization(realm, login, password);
Modified: jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/backup-client.xml
===================================================================
--- jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/backup-client.xml 2010-11-23 09:29:59 UTC (rev 3520)
+++ jcr/trunk/exo.jcr.docs/exo.jcr.docs.developer/en/src/main/docbook/en-US/modules/jcr/backup/backup-client.xml 2010-11-23 09:32:11 UTC (rev 3521)
@@ -999,7 +999,7 @@
<form auth parm> : form <method> <form path>
<method> : POST or GET
<form path> : /path/path?<paramName1>=<paramValue1>&<paramName2>=<paramValue2>...
- Example to <url form authentication> : http://127.0.0.1:8080/portal/rest form POST /portal/login?username=root&password=gtn
+ Example to <url form authentication> : http://127.0.0.1:8080/portal/rest form POST "/portal/login?username=root&password=gtn"
<cmd> : start <repo[/ws]> <backup_dir> [<incr>]
stop <backup_id>
More information about the exo-jcr-commits
mailing list