KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > mx4j > tools > remote > soap > SOAPConnectorServerTest


1 /*
2  * Copyright (C) The MX4J Contributors.
3  * All rights reserved.
4  *
5  * This software is distributed under the terms of the MX4J License version 1.0.
6  * See the terms of the MX4J License in the documentation provided with this software.
7  */

8
9 package test.mx4j.tools.remote.soap;
10
11 import java.net.MalformedURLException JavaDoc;
12 import java.util.HashMap JavaDoc;
13 import java.util.Map JavaDoc;
14 import java.util.Set JavaDoc;
15
16 import javax.management.MBeanServerConnection JavaDoc;
17 import javax.management.remote.JMXConnector JavaDoc;
18 import javax.management.remote.JMXConnectorFactory JavaDoc;
19 import javax.management.remote.JMXConnectorServer JavaDoc;
20 import javax.management.remote.JMXConnectorServerFactory JavaDoc;
21 import javax.management.remote.JMXServiceURL JavaDoc;
22
23 import mx4j.tools.remote.http.HTTPConnectorServer;
24 import mx4j.tools.remote.http.jetty.JettyWebContainer;
25 import org.apache.axis.transport.http.AxisServlet;
26 import test.mx4j.tools.remote.HTTPConnectorServerTestCase;
27
28 /**
29  * @version $Revision: 1.9 $
30  */

31 public class SOAPConnectorServerTest extends HTTPConnectorServerTestCase
32 {
33    public SOAPConnectorServerTest(String JavaDoc s)
34    {
35       super(s);
36    }
37
38    public JMXServiceURL JavaDoc createJMXConnectorServerAddress() throws MalformedURLException JavaDoc
39    {
40       return new JMXServiceURL JavaDoc("soap", null, 8080, "/soap");
41    }
42
43    public Map JavaDoc getEnvironment()
44    {
45       return new HashMap JavaDoc();
46    }
47
48    public void testExternalWebContainer() throws Exception JavaDoc
49    {
50       // Start Jetty, externally
51
JettyWebContainer jetty = new JettyWebContainer();
52       try
53       {
54          JMXServiceURL JavaDoc url = new JMXServiceURL JavaDoc("soap", null, 8080, "/external");
55          jetty.start(url, null);
56          jetty.deploy(AxisServlet.class.getName(), url, null);
57
58          // A SOAPConnector
59
JMXConnectorServer JavaDoc cntorServer = null;
60          JMXConnector JavaDoc cntor = null;
61          try
62          {
63             Map JavaDoc environment = new HashMap JavaDoc();
64             environment.put(HTTPConnectorServer.USE_EXTERNAL_WEB_CONTAINER, Boolean.TRUE);
65             cntorServer = JMXConnectorServerFactory.newJMXConnectorServer(url, environment, newMBeanServer());
66             cntorServer.start();
67
68             // Check that it works
69
cntor = JMXConnectorFactory.connect(cntorServer.getAddress());
70             MBeanServerConnection JavaDoc cntion = cntor.getMBeanServerConnection();
71             Set JavaDoc names = cntion.queryNames(null, null);
72             assertNotNull(names);
73             assertFalse(names.isEmpty());
74          }
75          finally
76          {
77             if (cntor != null) cntor.close();
78             if (cntorServer != null) cntorServer.stop();
79          }
80       }
81       finally
82       {
83          jetty.stop();
84       }
85    }
86 }
87
Popular Tags