dims 02/02/13 09:00:24
Modified: java/samples/security Client.java LogHandler.java
Log:
Cleanup/Reformat code for xml-security sample.
Revision Changes Path
1.4 +12 -25 xml-axis/java/samples/security/Client.java
Index: Client.java
===================================================================
RCS file: /home/cvs/xml-axis/java/samples/security/Client.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- Client.java 8 Feb 2002 22:14:11 -0000 1.3
+++ Client.java 13 Feb 2002 17:00:24 -0000 1.4
@@ -55,47 +55,34 @@
package samples.security;
+import org.apache.axis.MessageContext;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
-import org.apache.axis.utils.Options;
-
-import java.io.*;
-import java.security.cert.X509Certificate;
-import java.security.KeyStore;
-import java.security.PrivateKey;
-
-import org.apache.axis.*;
-import org.apache.axis.message.SOAPEnvelope;
import org.apache.axis.message.SOAPBodyElement;
-import org.apache.axis.message.MessageElement;
-import org.apache.axis.message.SOAPHeader;
-import org.apache.axis.client.ServiceClient;
-import org.apache.axis.utils.*;
-import org.apache.xml.security.signature.XMLSignature;
-import org.w3c.dom.Element;
-import org.w3c.dom.Document;
+import org.apache.axis.message.SOAPEnvelope;
+import org.apache.axis.utils.Options;
+import org.apache.axis.utils.XMLUtils;
-public class Client
-{
+public class Client {
static void main(String[] args) throws Exception {
Options opts = new Options(args);
- Service service = new Service();
- Call call = (Call) service.createCall();
- call.setTargetEndpointAddress(new java.net.URL(opts.getURL()));
+ Service service = new Service();
+ Call call = (Call) service.createCall();
+ call.setTargetEndpointAddress(new java.net.URL(opts.getURL()));
SOAPEnvelope env = new SOAPEnvelope();
- SOAPBodyElement sbe = new
SOAPBodyElement(XMLUtils.StringToElement("http://localhost:8080/LogTestService","testMethod",
""));
+ SOAPBodyElement sbe = new
SOAPBodyElement(XMLUtils.StringToElement("http://localhost:8080/LogTestService",
"testMethod", ""));
env.addBodyElement(sbe);
- env = new SignedSOAPEnvelope(env,"http://xml-security");
+ env = new SignedSOAPEnvelope(env, "http://xml-security");
System.out.println("\n============= Request ==============");
XMLUtils.PrettyElementToStream(env.getAsDOM(), System.out);
- call.invoke(env);
+ call.invoke(env);
- MessageContext mc = call.getMessageContext();
+ MessageContext mc = call.getMessageContext();
System.out.println("\n============= Response ==============");
XMLUtils.PrettyElementToStream(mc.getResponseMessage().getSOAPEnvelope().getAsDOM(),
System.out);
}
1.4 +35 -93 xml-axis/java/samples/security/LogHandler.java
Index: LogHandler.java
===================================================================
RCS file: /home/cvs/xml-axis/java/samples/security/LogHandler.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- LogHandler.java 25 Jan 2002 18:31:52 -0000 1.3
+++ LogHandler.java 13 Feb 2002 17:00:24 -0000 1.4
@@ -2,7 +2,7 @@
* The Apache Software License, Version 1.1
*
*
- * Copyright (c) 2001 The Apache Software Foundation. All rights
+ * Copyright (c) 2001 The Apache Software Foundation. All rights
* reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -10,7 +10,7 @@
* are met:
*
* 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
+ * notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
@@ -18,7 +18,7 @@
* distribution.
*
* 3. The end-user documentation included with the redistribution,
- * if any, must include the following acknowledgment:
+ * if any, must include the following acknowledgment:
* "This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/)."
* Alternately, this acknowledgment may appear in the software itself,
@@ -26,7 +26,7 @@
*
* 4. The names "Axis" and "Apache Software Foundation" must
* not be used to endorse or promote products derived from this
- * software without prior written permission. For written
+ * software without prior written permission. For written
* permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache",
@@ -57,76 +57,34 @@
import org.apache.axis.AxisFault;
import org.apache.axis.Handler;
-import org.apache.axis.MessageContext;
-import org.apache.axis.handlers.BasicHandler;
-import org.apache.axis.AxisFault;
import org.apache.axis.Message;
import org.apache.axis.MessageContext;
+import org.apache.axis.handlers.BasicHandler;
import org.apache.axis.utils.JavaUtils;
import org.apache.log4j.Category;
import org.apache.xml.security.signature.XMLSignature;
import org.apache.xml.security.utils.Constants;
import org.apache.xpath.CachedXPathAPI;
-
import org.w3c.dom.Document;
import org.w3c.dom.Element;
-
import java.io.FileWriter;
import java.io.PrintWriter;
-import java.io.FileOutputStream;
-import java.io.PrintWriter;
-import java.util.Date;
public class LogHandler extends BasicHandler {
static Category category =
Category.getInstance(LogHandler.class.getName());
- long start = 0;
-
- public void invoke(MessageContext msgContext) throws AxisFault
- {
- /** Log an access each time we get invoked.
- */
+ public void invoke(MessageContext msgContext) throws AxisFault {
try {
-System.out.println("Starting Server verification");
- Handler serviceHandler = msgContext.getServiceHandler();
- String filename = (String)getOption("filename");
-
- if ((filename == null) || (filename.equals("")))
- throw new AxisFault("Server.NoLogFile",
- "No log file configured for the LogHandler!",
- null, null);
- FileOutputStream fos = new FileOutputStream(filename, true);
-
- PrintWriter writer = new PrintWriter(fos);
-
- Integer numAccesses = null;
-
- try {
- numAccesses = (Integer)serviceHandler.getOption("accesses");
- } catch (ClassCastException cce) {
- } catch (Exception e) {
- e.printStackTrace();
- }
- if (numAccesses == null)
- numAccesses = new Integer(0);
-
- numAccesses = new Integer(numAccesses.intValue() + 1);
-
- Date date = new Date();
- String result = date + ": service " +
- msgContext.getTargetService() +
- " accessed " + numAccesses + " time(s).";
- serviceHandler.setOption("accesses", numAccesses);
- writer.println(result);
+ System.out.println("Starting Server verification");
Message inMsg = msgContext.getRequestMessage();
Message outMsg = msgContext.getResponseMessage();
- // verify signed message
-
- Document doc = inMsg.getSOAPPart().getAsSOAPEnvelope().getAsDocument();
+ // verify signed message
+
+ Document doc = inMsg.getSOAPPart().getAsSOAPEnvelope().getAsDocument();
String BaseURI = "http://xml-security";
CachedXPathAPI xpathAPI = new CachedXPathAPI();
@@ -134,60 +92,44 @@
nsctx.setAttribute("xmlns:ds", Constants.SignatureSpecNS);
Element signatureElem = (Element) xpathAPI.selectSingleNode(doc,
-
"//ds:Signature", nsctx);
+ "//ds:Signature", nsctx);
- // check to make sure that the document claims to have been signed
- if (signatureElem == null) {
- writer.println("The document is not signed"); writer.flush();
- return;
- }
+ // check to make sure that the document claims to have been signed
+ if (signatureElem == null) {
+ System.out.println("The document is not signed");
+ return;
+ }
XMLSignature sig = new XMLSignature(signatureElem, BaseURI);
-
- boolean verify =
sig.checkSignatureValue(sig.getKeyInfo().getPublicKey());
-System.out.println("Server verification complete.");
- writer.println("The signature is" + (verify
- ? " "
- : " not ") + "valid");
- // end verify
-
- writer.println(
"=======================================================" );
- writer.println( "= " + JavaUtils.getMessage("elapsed00",
- "" + (System.currentTimeMillis() - start)));
- writer.println( "= " + JavaUtils.getMessage("inMsg00",
- (inMsg == null ? "null" : inMsg.getSOAPPart().getAsString())));
- writer.println( "= " + JavaUtils.getMessage("outMsg00",
- (outMsg == null ? "null" : outMsg.getSOAPPart().getAsString())));
- writer.println(
"=======================================================" );
-
- // Here you can also use outMsg.getSOAPEnvelope().getAsDOM()
- // instead of outMsg.getSOAPPart().getAsString()
+ boolean verify =
sig.checkSignatureValue(sig.getKeyInfo().getPublicKey());
+ System.out.println("Server verification complete.");
- writer.close();
+ System.out.println("The signature is" + (verify
+ ? " "
+ : " not ") + "valid");
} catch (Exception e) {
throw AxisFault.makeFault(e);
- }
-
+ }
+
}
-
- public void undo(MessageContext msgContext)
- {
+
+ public void undo(MessageContext msgContext) {
try {
Handler serviceHandler = msgContext.getServiceHandler();
- String filename = (String)getOption("filename");
+ String filename = (String) getOption("filename");
if ((filename == null) || (filename.equals("")))
throw new AxisFault("Server.NoLogFile",
- "No log file configured for the LogHandler!",
- null, null);
- FileWriter fw = new FileWriter( filename, true );
- PrintWriter pw = new PrintWriter( fw );
- pw.println( "=====================" );
- pw.println( "= " + JavaUtils.getMessage("fault00") );
- pw.println( "=====================" );
+ "No log file configured for the LogHandler!",
+ null, null);
+ FileWriter fw = new FileWriter(filename, true);
+ PrintWriter pw = new PrintWriter(fw);
+ pw.println("=====================");
+ pw.println("= " + JavaUtils.getMessage("fault00"));
+ pw.println("=====================");
pw.close();
- } catch( Exception e ) {
- category.error( e );
+ } catch (Exception e) {
+ category.error(e);
}
}
}