1 /*
2 * Copyright 2010 Fraunhofer Gesellschaft, Munich, Germany,
3 * for its Fraunhofer Institute for Computer Architecture and Software
4 * Technology (FIRST), Berlin, Germany. All rights reserved.
5 * http://www.first.fraunhofer.de/
6 */
7
8 package net.kwfgrid.gwes;
9
10 import org.apache.axis2.handlers.AbstractHandler;
11 import org.apache.axis2.AxisFault;
12 import org.apache.axis2.context.MessageContext;
13 import org.apache.log4j.Logger;
14
15 import java.io.*;
16
17 /**
18 * Handler for Axis web service invocation.
19 * @author Andreas Hoheisel
20 * (<a href="http://www.andreas-hoheisel.de">www.andreas-hoheisel.de</a>)
21 * @version $Id: AxisClientHandler.java 1428 2010-11-02 15:15:10Z hoheisel $
22 */
23 public class AxisClientHandler extends AbstractHandler {
24
25 /**
26 * log4j logger.
27 */
28 static final Logger logger = Logger.getLogger(AxisClientHandler.class);
29
30 public InvocationResponse invoke(MessageContext messageContext) throws AxisFault {
31 try {
32 if(logger.isDebugEnabled()) {
33 logger.debug("Invoking "+messageContext.getProperty("transport.url"));
34 // + " with timeout " + messageContext.ggetTimeout());
35 // Iterator iter = messageContext.getAllPropertyNames();
36 // while (iter.hasNext()) {
37 // String name = (String) iter.next();
38 // logger.info(name + " = " + messageContext.getProperty(name));
39 // }
40 // print SOAP message to logger
41 // ToDo: Implement (migration Axis1 -> Axis2)
42 // ByteArrayOutputStream out = new ByteArrayOutputStream();
43 // messageContext.getAxisMessage().writeTo(out);
44 // out.flush();
45 // logger.debug(out.toString());
46 }
47 } catch (Exception e) {
48 throw AxisFault.makeFault(e);
49 }
50 return InvocationResponse.CONTINUE;
51 }
52
53 }