Author: psharples
Date: Wed Aug 15 20:07:39 2012
New Revision: 1373611
URL: http://svn.apache.org/viewvc?rev=1373611&view=rev
Log:
Improvement. If no key file found, generate an empty key file under
WEB-INF/classes, as suggested by Scott.
Modified:
incubator/wookie/trunk/src/org/apache/wookie/controller/WidgetsController.java
incubator/wookie/trunk/src/org/apache/wookie/messages.properties
incubator/wookie/trunk/src/org/apache/wookie/messages_nl.properties
incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java
Modified:
incubator/wookie/trunk/src/org/apache/wookie/controller/WidgetsController.java
URL:
http://svn.apache.org/viewvc/incubator/wookie/trunk/src/org/apache/wookie/controller/WidgetsController.java?rev=1373611&r1=1373610&r2=1373611&view=diff
==============================================================================
---
incubator/wookie/trunk/src/org/apache/wookie/controller/WidgetsController.java
(original)
+++
incubator/wookie/trunk/src/org/apache/wookie/controller/WidgetsController.java
Wed Aug 15 20:07:39 2012
@@ -16,6 +16,7 @@ package org.apache.wookie.controller;
import java.io.File;
import java.io.FileInputStream;
+import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@@ -268,17 +269,25 @@ public class WidgetsController extends C
fac.setFeatures(Features.getFeatureNames());
fac.setStartPageProcessor(new StartPageProcessor());
if (VERIFYSIGNATURE) {
- InputStream stream = getServletContext().getResourceAsStream(
- "/WEB-INF/classes/" + KEYSTORE);
- if(stream != null){
- KeyStore keyStore = KeyStore.getInstance("JKS");
+ KeyStore keyStore = KeyStore.getInstance("JKS");
+ InputStream stream =
getServletContext().getResourceAsStream("/WEB-INF/classes/" + KEYSTORE);
+ if (stream == null) {
+ stream =
getServletContext().getResourceAsStream("/WEB-INF/classes/" + "generated-" +
KEYSTORE);
+ }
+ if (stream == null) {
+ FileOutputStream fos = new FileOutputStream(getServletContext()
+ .getRealPath("/WEB-INF/classes/") + "generated-" +
KEYSTORE);
+ keyStore.load(null, PASSWORD.toCharArray());
+ keyStore.store(fos, PASSWORD.toCharArray());
+ fos.close();
+ fac.setDigitalSignatureParser(new
DigitalSignatureProcessor(keyStore,
+ REJECTINVALID, REJECTUNTRUSTED));
+ _logger.info(localizedMessages.getString("WidgetHotDeploy.4"));
+ } else {
keyStore.load(stream, PASSWORD.toCharArray());
stream.close();
fac.setDigitalSignatureParser(new
DigitalSignatureProcessor(keyStore,
REJECTINVALID, REJECTUNTRUSTED));
- }else{
- _logger.error(localizedMessages.getString("WidgetHotDeploy.4")
+
- " (/WEB-INF/classes/" + KEYSTORE+") " +
localizedMessages.getString("WidgetHotDeploy.5"));
}
}
W3CWidget widgetModel = fac.parse(zipFile);
Modified: incubator/wookie/trunk/src/org/apache/wookie/messages.properties
URL:
http://svn.apache.org/viewvc/incubator/wookie/trunk/src/org/apache/wookie/messages.properties?rev=1373611&r1=1373610&r2=1373611&view=diff
==============================================================================
--- incubator/wookie/trunk/src/org/apache/wookie/messages.properties (original)
+++ incubator/wookie/trunk/src/org/apache/wookie/messages.properties Wed Aug 15
20:07:39 2012
@@ -41,8 +41,7 @@ WidgetHotDeploy.0=Hot deploy disabled
WidgetHotDeploy.1=Hot deploy error: Unable to move dropped .wgt file to upload
folder
WidgetHotDeploy.2=Hot deploy error: file is not a valid widget package
WidgetHotDeploy.3=Hot deploy error: widget has invalid manifest
-WidgetHotDeploy.4=Unable to load specified key file.
-WidgetHotDeploy.5=Digital Signature Verification is not enabled.
+WidgetHotDeploy.4=Unable to load specified key file, so a new one was generated
WidgetServiceServlet.0=No valid requestid was found.
WidgetServiceServlet.1=completed
Modified: incubator/wookie/trunk/src/org/apache/wookie/messages_nl.properties
URL:
http://svn.apache.org/viewvc/incubator/wookie/trunk/src/org/apache/wookie/messages_nl.properties?rev=1373611&r1=1373610&r2=1373611&view=diff
==============================================================================
--- incubator/wookie/trunk/src/org/apache/wookie/messages_nl.properties
(original)
+++ incubator/wookie/trunk/src/org/apache/wookie/messages_nl.properties Wed Aug
15 20:07:39 2012
@@ -41,8 +41,7 @@ WidgetHotDeploy.0=Hot deploy disabled (d
WidgetHotDeploy.1=Hot deploy error: Unable to move dropped .wgt file to upload
folder (dutch)
WidgetHotDeploy.2=Hot deploy error: file is not a valid widget package (dutch)
WidgetHotDeploy.3=Hot deploy error: widget has invalid manifest (dutch)
-WidgetHotDeploy.4=Unable to load specified key file.(dutch)
-WidgetHotDeploy.5=Digital Signature Verification is not enabled.(dutch)
+WidgetHotDeploy.4=Unable to load specified key file, so a new one was
generated (dutch)
WidgetServiceServlet.0=No valid requestid was found.(dutch)
WidgetServiceServlet.1=completed(dutch)
Modified:
incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java
URL:
http://svn.apache.org/viewvc/incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java?rev=1373611&r1=1373610&r2=1373611&view=diff
==============================================================================
--- incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java
(original)
+++ incubator/wookie/trunk/src/org/apache/wookie/server/ContextListener.java
Wed Aug 15 20:07:39 2012
@@ -15,6 +15,7 @@
package org.apache.wookie.server;
import java.io.File;
+import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.security.KeyStore;
@@ -197,17 +198,25 @@ public class ContextListener implements
fac.setFeatures(Features.getFeatureNames());
fac.setStartPageProcessor(new
StartPageProcessor());
if (VERIFYSIGNATURE) {
- InputStream stream = context
- .getResourceAsStream("/WEB-INF/classes/" +
KEYSTORE);
- if(stream != null){
- KeyStore keyStore =
KeyStore.getInstance("JKS");
+ KeyStore keyStore =
KeyStore.getInstance("JKS");
+ InputStream stream =
context.getResourceAsStream("/WEB-INF/classes/" + KEYSTORE);
+ if (stream == null) {
+ stream =
context.getResourceAsStream("/WEB-INF/classes/" + "generated-" + KEYSTORE);
+ }
+ if (stream == null) {
+ FileOutputStream fos = new
FileOutputStream(context
+ .getRealPath("/WEB-INF/classes/")
+ "generated-" + KEYSTORE);
+ keyStore.load(null,
PASSWORD.toCharArray());
+ keyStore.store(fos,
PASSWORD.toCharArray());
+ fos.close();
+ fac.setDigitalSignatureParser(new
DigitalSignatureProcessor(keyStore,
+ REJECTINVALID, REJECTUNTRUSTED));
+
_logger.info(localizedMessages.getString("WidgetHotDeploy.4"));
+ } else {
keyStore.load(stream,
PASSWORD.toCharArray());
stream.close();
- fac.setDigitalSignatureParser(new
DigitalSignatureProcessor(
- keyStore, REJECTINVALID,
REJECTUNTRUSTED));
- }else{
-
_logger.error(localizedMessages.getString("WidgetHotDeploy.4") +
- " (/WEB-INF/classes/" +
KEYSTORE+") " + localizedMessages.getString("WidgetHotDeploy.5"));
+ fac.setDigitalSignatureParser(new
DigitalSignatureProcessor(keyStore,
+ REJECTINVALID, REJECTUNTRUSTED));
}
}