You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by cs...@apache.org on 2013/10/28 17:39:27 UTC
svn commit: r1536397 - in /cxf/trunk/services/xkms: xkms-itests/
xkms-itests/src/test/java/org/apache/cxf/xkms/itests/
xkms-itests/src/test/resources/etc/
xkms-osgi/src/main/resources/OSGI-INF/blueprint/
xkms-service/src/main/java/org/apache/cxf/xkms/s...
Author: cschneider
Date: Mon Oct 28 16:39:27 2013
New Revision: 1536397
URL: http://svn.apache.org/r1536397
Log:
Improve logging in tests
Added:
cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.ops4j.pax.logging.cfg
Modified:
cxf/trunk/services/xkms/xkms-itests/pom.xml
cxf/trunk/services/xkms/xkms-itests/src/test/java/org/apache/cxf/xkms/itests/BasicIntegrationTest.java
cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.apache.cxf.xkms.cfg
cxf/trunk/services/xkms/xkms-osgi/src/main/resources/OSGI-INF/blueprint/blueprint.xml
cxf/trunk/services/xkms/xkms-service/src/main/java/org/apache/cxf/xkms/service/XKMSService.java
cxf/trunk/services/xkms/xkms-x509-handlers/src/main/java/org/apache/cxf/xkms/x509/validator/DateValidator.java
Modified: cxf/trunk/services/xkms/xkms-itests/pom.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/services/xkms/xkms-itests/pom.xml?rev=1536397&r1=1536396&r2=1536397&view=diff
==============================================================================
--- cxf/trunk/services/xkms/xkms-itests/pom.xml (original)
+++ cxf/trunk/services/xkms/xkms-itests/pom.xml Mon Oct 28 16:39:27 2013
@@ -88,16 +88,7 @@
</exclusion>
</exclusions>
</dependency>
-
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- </dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-jdk14</artifactId>
- </dependency>
</dependencies>
<build>
@@ -107,6 +98,7 @@
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<systemPropertyVariables>
+ <org.ops4j.pax.logging.DefaultServiceLog.level>WARN</org.ops4j.pax.logging.DefaultServiceLog.level>
<project.version>${project.version}</project.version>
<karaf.version>${karaf.version}</karaf.version>
<buildDirectory>${project.build.directory}</buildDirectory>
Modified: cxf/trunk/services/xkms/xkms-itests/src/test/java/org/apache/cxf/xkms/itests/BasicIntegrationTest.java
URL: http://svn.apache.org/viewvc/cxf/trunk/services/xkms/xkms-itests/src/test/java/org/apache/cxf/xkms/itests/BasicIntegrationTest.java?rev=1536397&r1=1536396&r2=1536397&view=diff
==============================================================================
--- cxf/trunk/services/xkms/xkms-itests/src/test/java/org/apache/cxf/xkms/itests/BasicIntegrationTest.java (original)
+++ cxf/trunk/services/xkms/xkms-itests/src/test/java/org/apache/cxf/xkms/itests/BasicIntegrationTest.java Mon Oct 28 16:39:27 2013
@@ -24,7 +24,6 @@ import javax.inject.Inject;
import org.ops4j.pax.exam.Configuration;
import org.ops4j.pax.exam.Option;
-import org.ops4j.pax.exam.karaf.options.LogLevelOption.LogLevel;
import org.ops4j.pax.exam.options.MavenArtifactUrlReference;
import org.ops4j.pax.exam.options.MavenUrlReference;
import org.ops4j.pax.exam.spi.reactors.ExamReactorStrategy;
@@ -33,10 +32,11 @@ import org.w3._2002._03.xkms_wsdl.XKMSPo
import static org.ops4j.pax.exam.CoreOptions.maven;
import static org.ops4j.pax.exam.CoreOptions.systemProperty;
+import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.configureConsole;
import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.editConfigurationFilePut;
import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.features;
import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.karafDistributionConfiguration;
-import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.logLevel;
+import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.keepRuntimeFolder;
import static org.ops4j.pax.exam.karaf.options.KarafDistributionOption.replaceConfigurationFile;
@ExamReactorStrategy(PerClass.class)
@@ -69,7 +69,6 @@ public class BasicIntegrationTest {
return new Option[] {
karafDistributionConfiguration().frameworkUrl(karafUrl).karafVersion(karafVersion)
.unpackDirectory(new File("target/paxexam/unpack/")).useDeployFolder(false),
- logLevel(LogLevel.INFO),
systemProperty("java.awt.headless").value("true"),
replaceConfigurationFile("data/xkms/certificates/trusted_cas/root.cer",
@@ -83,11 +82,14 @@ public class BasicIntegrationTest {
replaceConfigurationFile("data/xkms/certificates/crls/wss40CACRL.cer",
new File("src/test/resources/data/xkms/certificates/crls/wss40CACRL.cer")),
replaceConfigurationFile("etc/org.apache.cxf.xkms.cfg", getConfigFile()),
-
+ replaceConfigurationFile("etc/org.ops4j.pax.logging.cfg",
+ new File("src/test/resources/etc/org.ops4j.pax.logging.cfg")),
editConfigurationFilePut("etc/org.ops4j.pax.url.mvn.cfg", "org.ops4j.pax.url.mvn.repositories", REPOS),
editConfigurationFilePut("etc/org.ops4j.pax.web.cfg", "org.osgi.service.http.port", HTTP_PORT),
editConfigurationFilePut("etc/org.apache.cxf.xkms.client.cfg", "xkms.endpoint", XKMS_ENDPOINT),
features(xkmsFeatures, "cxf-xkms-service", "cxf-xkms-client"),
+ configureConsole().ignoreLocalConsole(),
+ keepRuntimeFolder()
//CoreOptions.vmOption("-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005")
};
}
Modified: cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.apache.cxf.xkms.cfg
URL: http://svn.apache.org/viewvc/cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.apache.cxf.xkms.cfg?rev=1536397&r1=1536396&r2=1536397&view=diff
==============================================================================
--- cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.apache.cxf.xkms.cfg (original)
+++ cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.apache.cxf.xkms.cfg Mon Oct 28 16:39:27 2013
@@ -26,6 +26,9 @@ xkms.certificate.repo=file
# Disable Revocation
xkms.enableRevocation=false
+# Do not log exceptions on server side
+xkms.logExceptions=false
+
# Filesystem backend
xkms.file.storageDir=data/xkms/certificates
Added: cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.ops4j.pax.logging.cfg
URL: http://svn.apache.org/viewvc/cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.ops4j.pax.logging.cfg?rev=1536397&view=auto
==============================================================================
--- cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.ops4j.pax.logging.cfg (added)
+++ cxf/trunk/services/xkms/xkms-itests/src/test/resources/etc/org.ops4j.pax.logging.cfg Mon Oct 28 16:39:27 2013
@@ -0,0 +1,25 @@
+# Root logger
+log4j.rootLogger=WARN, stdout, file
+log4j.throwableRenderer=org.apache.log4j.OsgiThrowableRenderer
+
+log4j.logger.org.apache.cxf.xkms=INFO
+log4j.logger.org.apache.cxf.xkms.x509.validator=WARN
+
+# Reduce noisy output
+log4j.logger.org.ops4j.pax.swissbox.bnd.BndUtils=ERROR
+
+# CONSOLE appender
+log4j.appender.stdout.threshold=INFO
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} | %-5.5p | %-50.50c | %m%n
+#log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} | %-5.5p | %-40.40c | %-3.3X{bundle.id} - %-20.20X{bundle.name} | %m%n
+
+
+# File appender
+log4j.appender.file.threshold=DEBUG
+log4j.appender.file=org.apache.log4j.FileAppender
+log4j.appender.file.layout=org.apache.log4j.PatternLayout
+log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} | %-5.5p | %-50.50c | %m%n
+log4j.appender.file.file=${karaf.home}/log/tesb.log
+log4j.appender.file.append=true
Modified: cxf/trunk/services/xkms/xkms-osgi/src/main/resources/OSGI-INF/blueprint/blueprint.xml
URL: http://svn.apache.org/viewvc/cxf/trunk/services/xkms/xkms-osgi/src/main/resources/OSGI-INF/blueprint/blueprint.xml?rev=1536397&r1=1536396&r2=1536397&view=diff
==============================================================================
--- cxf/trunk/services/xkms/xkms-osgi/src/main/resources/OSGI-INF/blueprint/blueprint.xml (original)
+++ cxf/trunk/services/xkms/xkms-osgi/src/main/resources/OSGI-INF/blueprint/blueprint.xml Mon Oct 28 16:39:27 2013
@@ -23,6 +23,7 @@
<cm:property-placeholder persistent-id="org.apache.cxf.xkms" update-strategy="reload">
<cm:default-properties>
<cm:property name="xkms.enableXKRSS" value="true"/>
+ <cm:property name="xkms.logExceptions" value="false"/>
<cm:property name="xkms.certificate.repo" value="ldap"/>
<cm:property name="xkms.file.storageDir" value="data/xkms/certificates"/>
<cm:property name="xkms.ldap.url" value="tcp:localhost:389"/>
@@ -86,6 +87,7 @@
<bean id="xkmsService" class="org.apache.cxf.xkms.service.XKMSService">
<property name="enableXKRSS" value="${xkms.enableXKRSS}" />
+ <property name="logExceptions" value="${xkms.logExceptions}" />
<property name="validators">
<list>
<ref component-id="dateValidator" />
Modified: cxf/trunk/services/xkms/xkms-service/src/main/java/org/apache/cxf/xkms/service/XKMSService.java
URL: http://svn.apache.org/viewvc/cxf/trunk/services/xkms/xkms-service/src/main/java/org/apache/cxf/xkms/service/XKMSService.java?rev=1536397&r1=1536396&r2=1536397&view=diff
==============================================================================
--- cxf/trunk/services/xkms/xkms-service/src/main/java/org/apache/cxf/xkms/service/XKMSService.java (original)
+++ cxf/trunk/services/xkms/xkms-service/src/main/java/org/apache/cxf/xkms/service/XKMSService.java Mon Oct 28 16:39:27 2013
@@ -63,65 +63,54 @@ public class XKMSService implements XKMS
protected static final Logger LOG = LogUtils.getL7dLogger(XKMSService.class);
private String serviceName = XKMSConstants.XKMS_ENDPOINT_NAME;
-
private List<Locator> locators = new ArrayList<Locator>();
-
private List<Validator> validators = new ArrayList<Validator>();
-
private List<Register> keyRegisterHandlers = new ArrayList<Register>();
-
private boolean enableXKRSS = true;
+ private boolean logExceptions;
@Override
public ReissueResultType reissue(ReissueRequestType request) {
- assertXKRSSAllowed();
+ ReissueResultType response = XKMSResponseFactory.createResponse(request, new ReissueResultType());
try {
+ assertXKRSSAllowed();
validateRequest(request);
- ReissueResultType response = XKMSResponseFactory.createResponse(request, new ReissueResultType());
- try {
- for (Register handler : keyRegisterHandlers) {
- if (handler.canProcess(request)) {
- return handler.reissue(request, response);
- }
+ for (Register handler : keyRegisterHandlers) {
+ if (handler.canProcess(request)) {
+ return handler.reissue(request, response);
}
- throw new UnsupportedOperationException("Service was unable to handle your request");
- } catch (Exception e) {
- LOG.log(Level.SEVERE, "Error due X509 Validation: " + e.getMessage(), e);
- return ExceptionMapper.toResponse(e, response);
}
+ throw new UnsupportedOperationException("Service was unable to handle your request");
} catch (Exception e) {
- return ExceptionMapper.toResponse(e, XKMSResponseFactory.createResponse(request, new ReissueResultType()));
+ return handleException("reissue", e, response);
}
}
+
@Override
public CompoundResultType compound(CompoundRequestType request) {
validateRequest(request);
RuntimeException ex = new UnsupportedOperationException("XKMS compound request is currently not supported");
CompoundResultType response = XKMSResponseFactory.createResponse(request, new CompoundResultType());
- return ExceptionMapper.toResponse(ex, response);
+ return handleException("compound", ex, response);
}
@Override
public RegisterResultType register(RegisterRequestType request) {
+ RegisterResultType response = XKMSResponseFactory.createResponse(request, new RegisterResultType());
try {
- assertXKRSSAllowed();
+ assertXKRSSAllowed();
validateRequest(request);
- RegisterResultType response = XKMSResponseFactory.createResponse(request, new RegisterResultType());
- try {
- for (Register handler : keyRegisterHandlers) {
- if (handler.canProcess(request)) {
- return handler.register(request, response);
- }
+
+ for (Register handler : keyRegisterHandlers) {
+ if (handler.canProcess(request)) {
+ return handler.register(request, response);
}
- throw new UnsupportedOperationException("Service was unable to handle your request");
- } catch (Exception e) {
- LOG.log(Level.SEVERE, "Error due X509 Validation: " + e.getMessage(), e);
- return ExceptionMapper.toResponse(e, response);
}
+ throw new UnsupportedOperationException("Service was unable to handle your request");
} catch (Exception e) {
- return ExceptionMapper.toResponse(e, XKMSResponseFactory.createResponse(request, new RegisterResultType()));
+ return handleException("register", e, response);
}
}
@@ -135,67 +124,56 @@ public class XKMSService implements XKMS
@Override
public RevokeResultType revoke(RevokeRequestType request) {
+ RevokeResultType response = XKMSResponseFactory.createResponse(request, new RevokeResultType());
try {
assertXKRSSAllowed();
validateRequest(request);
- RevokeResultType response = XKMSResponseFactory.createResponse(request, new RevokeResultType());
- try {
- for (Register handler : keyRegisterHandlers) {
- if (handler.canProcess(request)) {
- return handler.revoke(request, response);
- }
+ for (Register handler : keyRegisterHandlers) {
+ if (handler.canProcess(request)) {
+ return handler.revoke(request, response);
}
- throw new UnsupportedOperationException("Service was unable to handle your request");
- } catch (Exception e) {
- LOG.log(Level.SEVERE, "Error due X509 Validation: " + e.getMessage(), e);
- return ExceptionMapper.toResponse(e, response);
}
+ throw new UnsupportedOperationException("Service was unable to handle your request");
} catch (Exception e) {
- return ExceptionMapper.toResponse(e, XKMSResponseFactory.createResponse(request, new RevokeResultType()));
+ return handleException("revoke", e, response);
}
}
@Override
public LocateResultType locate(LocateRequestType request) {
+ LocateResultType response = XKMSResponseFactory.createResponse(request, new LocateResultType());
try {
validateRequest(request);
- // Create basic response
- LocateResultType result = XKMSResponseFactory.createResponse(request, new LocateResultType());
// Search
for (Locator locator : locators) {
UnverifiedKeyBindingType keyBinding = locator.locate(request);
if (keyBinding != null) {
- result.getUnverifiedKeyBinding().add(keyBinding);
- return result;
+ response.getUnverifiedKeyBinding().add(keyBinding);
+ return response;
}
}
// No matches found
- result.setResultMinor(ResultMinorEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_NO_MATCH.value());
- return result;
+ response.setResultMinor(ResultMinorEnum.HTTP_WWW_W_3_ORG_2002_03_XKMS_NO_MATCH.value());
+ return response;
} catch (Exception e) {
- return ExceptionMapper.toResponse(e, XKMSResponseFactory.createResponse(request, new LocateResultType()));
+ return handleException("locate", e, response);
}
}
@Override
public RecoverResultType recover(RecoverRequestType request) {
+ RecoverResultType response = XKMSResponseFactory.createResponse(request, new RecoverResultType());
try {
assertXKRSSAllowed();
validateRequest(request);
- RecoverResultType response = XKMSResponseFactory.createResponse(request, new RecoverResultType());
- try {
- for (Register handler : keyRegisterHandlers) {
- if (handler.canProcess(request)) {
- return handler.recover(request, response);
- }
+ for (Register handler : keyRegisterHandlers) {
+ if (handler.canProcess(request)) {
+ return handler.recover(request, response);
}
- throw new UnsupportedOperationException("Service was unable to handle your request");
- } catch (Exception e) {
- LOG.log(Level.SEVERE, "Error during recover: " + e.getMessage(), e);
- return ExceptionMapper.toResponse(e, response);
}
+ throw new UnsupportedOperationException("Service was unable to handle your request");
} catch (Exception e) {
- return ExceptionMapper.toResponse(e, XKMSResponseFactory.createResponse(request, new RecoverResultType()));
+ return handleException("recover", e, response);
}
}
@@ -209,12 +187,12 @@ public class XKMSService implements XKMS
@Override
public ValidateResultType validate(ValidateRequestType request) {
+ ValidateResultType response = XKMSResponseFactory.createResponse(request, new ValidateResultType());
try {
validateRequest(request);
// Create basic response
- ValidateResultType result = XKMSResponseFactory.createResponse(request, new ValidateResultType());
- KeyBindingType binding = createKeyBinding(result);
+ KeyBindingType binding = createKeyBinding(response);
// Validate request
for (Validator validator : validators) {
@@ -223,10 +201,17 @@ public class XKMSService implements XKMS
}
resolveValidationStatus(binding);
- return result;
+ return response;
} catch (Exception e) {
- return ExceptionMapper.toResponse(e, XKMSResponseFactory.createResponse(request, new ValidateResultType()));
+ return handleException("recover", e, response);
+ }
+ }
+
+ private <T extends ResultType> T handleException(String method, Exception e, T response) {
+ if (logExceptions) {
+ LOG.log(Level.SEVERE, "Error during " + method + ": " + e.getMessage(), e);
}
+ return ExceptionMapper.toResponse(e, response);
}
/**
@@ -322,9 +307,14 @@ public class XKMSService implements XKMS
LOG.info("enableXKRSS:" + enableXKRSS);
}
+ public void setLogExceptions(boolean logExceptions) {
+ this.logExceptions = logExceptions;
+ }
+
private void assertXKRSSAllowed() {
if (!enableXKRSS) {
throw new UnsupportedOperationException("XKRSS Operations are disabled");
}
}
}
+
Modified: cxf/trunk/services/xkms/xkms-x509-handlers/src/main/java/org/apache/cxf/xkms/x509/validator/DateValidator.java
URL: http://svn.apache.org/viewvc/cxf/trunk/services/xkms/xkms-x509-handlers/src/main/java/org/apache/cxf/xkms/x509/validator/DateValidator.java?rev=1536397&r1=1536396&r2=1536397&view=diff
==============================================================================
--- cxf/trunk/services/xkms/xkms-x509-handlers/src/main/java/org/apache/cxf/xkms/x509/validator/DateValidator.java (original)
+++ cxf/trunk/services/xkms/xkms-x509-handlers/src/main/java/org/apache/cxf/xkms/x509/validator/DateValidator.java Mon Oct 28 16:39:27 2013
@@ -88,7 +88,7 @@ public class DateValidator implements Va
for (X509Certificate x509Certificate : certificates) {
if (!isCertificateValid(x509Certificate)) {
- LOG.severe("Certificate is expired: " + x509Certificate.getSubjectX500Principal());
+ LOG.info("Certificate is expired: " + x509Certificate.getSubjectX500Principal());
return false;
}
}