diff --git a/hsarback/build.xml b/hsarback/build.xml
new file mode 100644
index 0000000..297d0c8
--- /dev/null
+++ b/hsarback/build.xml
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/hsarback/conf/META-INF/persistence.xml b/hsarback/conf/META-INF/persistence.xml
new file mode 100644
index 0000000..adb13ff
--- /dev/null
+++ b/hsarback/conf/META-INF/persistence.xml
@@ -0,0 +1,26 @@
+
+
+
+ org.apache.openjpa.persistence.PersistenceProviderImpl
+ java:/comp/env/jdbc/HSAdminDB
+ de.hsadmin.core.qserv.QueueTask
+ de.hsadmin.mods.cust.Customer
+ de.hsadmin.mods.cust.Contact
+ de.hsadmin.mods.cust.BankAccount
+ de.hsadmin.mods.cust.CustomersTariff
+ de.hsadmin.mods.pac.Pac
+ de.hsadmin.mods.pac.BasePac
+ de.hsadmin.mods.pac.BaseComponent
+ de.hsadmin.mods.pac.Component
+ de.hsadmin.mods.pac.PacComponent
+ de.hsadmin.mods.pac.Hive
+ de.hsadmin.mods.pac.INetAddress
+ de.hsadmin.mods.user.UnixUser
+
+
+
+
+
+
diff --git a/hsarback/lib/commons-codec-1.3.jar b/hsarback/lib/commons-codec-1.3.jar
new file mode 100644
index 0000000..957b675
Binary files /dev/null and b/hsarback/lib/commons-codec-1.3.jar differ
diff --git a/hsarback/lib/commons-collections-3.2.1.jar b/hsarback/lib/commons-collections-3.2.1.jar
new file mode 100644
index 0000000..c35fa1f
Binary files /dev/null and b/hsarback/lib/commons-collections-3.2.1.jar differ
diff --git a/hsarback/lib/commons-httpclient-3.1.jar b/hsarback/lib/commons-httpclient-3.1.jar
new file mode 100644
index 0000000..7c59774
Binary files /dev/null and b/hsarback/lib/commons-httpclient-3.1.jar differ
diff --git a/hsarback/lib/commons-lang-2.1.jar b/hsarback/lib/commons-lang-2.1.jar
new file mode 100644
index 0000000..87b80ab
Binary files /dev/null and b/hsarback/lib/commons-lang-2.1.jar differ
diff --git a/hsarback/lib/commons-logging-1.1.1.jar b/hsarback/lib/commons-logging-1.1.1.jar
new file mode 100644
index 0000000..8758a96
Binary files /dev/null and b/hsarback/lib/commons-logging-1.1.1.jar differ
diff --git a/hsarback/lib/commons-pool-1.5.3.jar b/hsarback/lib/commons-pool-1.5.3.jar
new file mode 100644
index 0000000..b31287a
Binary files /dev/null and b/hsarback/lib/commons-pool-1.5.3.jar differ
diff --git a/hsarback/lib/geronimo-jms_1.1_spec-1.1.1.jar b/hsarback/lib/geronimo-jms_1.1_spec-1.1.1.jar
new file mode 100644
index 0000000..4f5e646
Binary files /dev/null and b/hsarback/lib/geronimo-jms_1.1_spec-1.1.1.jar differ
diff --git a/hsarback/lib/geronimo-jpa_2.0_spec-1.0.jar b/hsarback/lib/geronimo-jpa_2.0_spec-1.0.jar
new file mode 100644
index 0000000..2ea9ca9
Binary files /dev/null and b/hsarback/lib/geronimo-jpa_2.0_spec-1.0.jar differ
diff --git a/hsarback/lib/geronimo-jta_1.1_spec-1.1.1.jar b/hsarback/lib/geronimo-jta_1.1_spec-1.1.1.jar
new file mode 100644
index 0000000..ee9963d
Binary files /dev/null and b/hsarback/lib/geronimo-jta_1.1_spec-1.1.1.jar differ
diff --git a/hsarback/lib/mail.jar b/hsarback/lib/mail.jar
new file mode 100644
index 0000000..d972ec8
Binary files /dev/null and b/hsarback/lib/mail.jar differ
diff --git a/hsarback/lib/openjpa-2.0.0.jar b/hsarback/lib/openjpa-2.0.0.jar
new file mode 100644
index 0000000..bdbac6c
Binary files /dev/null and b/hsarback/lib/openjpa-2.0.0.jar differ
diff --git a/hsarback/lib/serp-1.13.1.jar b/hsarback/lib/serp-1.13.1.jar
new file mode 100644
index 0000000..0f7fd7b
Binary files /dev/null and b/hsarback/lib/serp-1.13.1.jar differ
diff --git a/hsarback/lib/servlet-api-2.4.jar b/hsarback/lib/servlet-api-2.4.jar
new file mode 100644
index 0000000..16316ea
Binary files /dev/null and b/hsarback/lib/servlet-api-2.4.jar differ
diff --git a/hsarback/lib/ws-commons-util-1.0.2.jar b/hsarback/lib/ws-commons-util-1.0.2.jar
new file mode 100644
index 0000000..3fc364e
Binary files /dev/null and b/hsarback/lib/ws-commons-util-1.0.2.jar differ
diff --git a/hsarback/lib/xmlrpc-client-3.1.3.jar b/hsarback/lib/xmlrpc-client-3.1.3.jar
new file mode 100644
index 0000000..38e3359
Binary files /dev/null and b/hsarback/lib/xmlrpc-client-3.1.3.jar differ
diff --git a/hsarback/lib/xmlrpc-common-3.1.3.jar b/hsarback/lib/xmlrpc-common-3.1.3.jar
new file mode 100644
index 0000000..b5eb9df
Binary files /dev/null and b/hsarback/lib/xmlrpc-common-3.1.3.jar differ
diff --git a/hsarback/lib/xmlrpc-server-3.1.3.jar b/hsarback/lib/xmlrpc-server-3.1.3.jar
new file mode 100644
index 0000000..2f930f1
Binary files /dev/null and b/hsarback/lib/xmlrpc-server-3.1.3.jar differ
diff --git a/hsarback/test/de/hsadmin/remote/QueueTaskTest.java b/hsarback/test/de/hsadmin/remote/QueueTaskTest.java
new file mode 100644
index 0000000..6494baa
--- /dev/null
+++ b/hsarback/test/de/hsadmin/remote/QueueTaskTest.java
@@ -0,0 +1,125 @@
+package de.hsadmin.remote;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.xmlrpc.XmlRpcException;
+import org.apache.xmlrpc.client.XmlRpcClient;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+public class QueueTaskTest {
+
+ private static final String MODULE = "q";
+
+ private XmlRpcClient client;
+ private RemoteCASHelper cas;
+
+ @Before
+ public void setUp() throws Exception {
+ client = RemoteTestHelper.getClient();
+ cas = new RemoteCASHelper();
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ client = null;
+ cas = null;
+ }
+
+ @Test
+ public void testSearchAllAsPacAdmin() {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map whereParams = new HashMap();
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ whereParams };
+ try {
+ Object execute = client.execute(MODULE + ".search", params);
+ Object[] result = (Object[]) execute;
+ assertTrue(result.length > 100);
+ for (Object o : result) {
+ if (o instanceof Map, ?>) {
+ Map, ?> row = (Map, ?>) o;
+ assertEquals("peh00", ((String) row.get("user")).substring(0, 5));
+ } else {
+ fail("map expected");
+ }
+ }
+ } catch (XmlRpcException e) {
+ fail(e.getMessage());
+ }
+ }
+
+ @Test
+ public void testUpdate() {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map setParams = new HashMap();
+ Map whereParams = new HashMap();
+ setParams.put("details", "Test");
+ whereParams.put("user", "peh00");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ setParams, whereParams };
+ try {
+ Object execute = client.execute(MODULE + ".update", params);
+ assertNotNull(execute);
+ fail("exception expected");
+ } catch (XmlRpcException e) {
+// System.out.println(e.getMessage());
+ }
+ }
+
+
+ @Test
+ public void testCreateFails() {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map setParams = new HashMap();
+ setParams.put("status", "done");
+ setParams.put("title", "Test");
+ setParams.put("user", "peh00");
+ setParams.put("hive", "h05");
+ setParams.put("started", "03.03.2010");
+ setParams.put("finished", "03.03.2010");
+ setParams.put("details", "Blupp");
+ setParams.put("exception", "f6n");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ setParams };
+ try {
+ Object execute = client.execute(MODULE + ".add", params);
+ assertTrue(execute instanceof Map, ?>);
+ fail("exception expected");
+ } catch (XmlRpcException e) {
+// System.out.println(e.getMessage());
+ }
+ }
+
+ @Test
+ public void testDeleteAsPacAdminFails() {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map whereParams = new HashMap();
+ whereParams.put("user", "peh00");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ whereParams };
+ try {
+ Object execute = client.execute(MODULE + ".delete", params);
+ assertTrue(execute instanceof Map, ?>);
+ fail("exception expected");
+ } catch (XmlRpcException e) {
+// System.out.println(e.getMessage());
+ }
+ }
+
+}
diff --git a/hsarback/test/de/hsadmin/remote/RemoteCASHelper.java b/hsarback/test/de/hsadmin/remote/RemoteCASHelper.java
new file mode 100644
index 0000000..04bd1dc
--- /dev/null
+++ b/hsarback/test/de/hsadmin/remote/RemoteCASHelper.java
@@ -0,0 +1,105 @@
+package de.hsadmin.remote;
+
+import java.io.BufferedReader;
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.io.UnsupportedEncodingException;
+import java.net.URL;
+import java.net.URLEncoder;
+import java.util.Properties;
+
+import javax.net.ssl.HttpsURLConnection;
+
+public class RemoteCASHelper {
+
+ private static String LOGIN_URL = "https://login.hostsharing.net:443/cas/v1/tickets";
+
+ private String loginURL;
+ private Properties config;
+
+ public RemoteCASHelper() {
+ initConfig();
+ }
+
+ private void initConfig() {
+ config = new Properties();
+ try {
+ config.load(new FileInputStream( new File(System.getProperty("user.home"), ".hsadmin.conf")));
+ } catch (IOException e) {
+ }
+ loginURL = config.getProperty("loginURL", LOGIN_URL);
+ }
+
+ public String getGrantingTicketURL(String user, String pw) {
+ if ("peh00".equals(pw)) {
+ pw = config.getProperty("peh00.passWord", "-");
+ }
+ if ("peh01".equals(pw)) {
+ pw = config.getProperty("peh01.passWord", "-");
+ }
+ if ("pe".equals(pw)) {
+ pw = config.getProperty("pe.passWord", "-");
+ }
+ if (user.equals(pw)) {
+ System.err.println("Unknown Password for: " + pw);
+ return null;
+ }
+ try {
+ String encodedParams = URLEncoder.encode("username", "UTF-8")
+ + "=" + URLEncoder.encode(user, "UTF-8")
+ + "&" + URLEncoder.encode("password", "UTF-8")
+ + "=" + URLEncoder.encode(pw, "UTF-8");
+ return doHttpPost(loginURL, encodedParams);
+ } catch (UnsupportedEncodingException e) {
+ System.err.println(e.getMessage());
+ return null;
+ }
+ }
+
+ public String getServiceTicket(String location, String service) {
+ try {
+ String encodedParams = URLEncoder.encode("service", "UTF-8")
+ + "=" + URLEncoder.encode(service, "UTF-8");
+ return doHttpPost(location, encodedParams);
+ } catch (UnsupportedEncodingException e) {
+ System.err.println(e.getMessage());
+ return null;
+ }
+ }
+
+ private String doHttpPost(String urlString, String encodedParams) {
+ String result = null;
+ try {
+ URL url = new URL(urlString);
+ HttpsURLConnection connection = (HttpsURLConnection) url.openConnection();
+ connection.setRequestMethod("POST");
+ connection.setRequestProperty("Content-type", "application/x-www-form-urlencoded; charset=UTF-8");
+ connection.setDoInput(true);
+ connection.setDoOutput(true);
+ connection.setUseCaches(false);
+ connection.setAllowUserInteraction(false);
+ BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(connection.getOutputStream()));
+ writer.write(encodedParams);
+ writer.close();
+ BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
+ String ticket = reader.readLine();
+ String readLine = null;
+ do {
+ readLine = reader.readLine();
+ } while (readLine != null);
+ result = connection.getHeaderField("Location");
+ if (ticket != null && ticket.startsWith("ST-")) {
+ result = ticket;
+ }
+ } catch (IOException e) {
+ System.err.println(e.getMessage());
+ return null;
+ }
+ return result;
+ }
+
+}
diff --git a/hsarback/test/de/hsadmin/remote/RemoteTest.java b/hsarback/test/de/hsadmin/remote/RemoteTest.java
new file mode 100644
index 0000000..8176a0b
--- /dev/null
+++ b/hsarback/test/de/hsadmin/remote/RemoteTest.java
@@ -0,0 +1,20 @@
+package de.hsadmin.remote;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+
+@RunWith(Suite.class)
+@Suite.SuiteClasses({
+ UnixUserTest.class,
+// MySqlDatabaseTest.class,
+// MySqlUserTest.class,
+// PgSqlUserTest.class,
+// EMailAddressTest.class,
+// DomainTest.class,
+// HostmasterTest.class,
+ QueueTaskTest.class
+})
+
+public class RemoteTest {
+
+}
diff --git a/hsarback/test/de/hsadmin/remote/RemoteTestHelper.java b/hsarback/test/de/hsadmin/remote/RemoteTestHelper.java
new file mode 100644
index 0000000..2b3a18a
--- /dev/null
+++ b/hsarback/test/de/hsadmin/remote/RemoteTestHelper.java
@@ -0,0 +1,25 @@
+package de.hsadmin.remote;
+
+import java.net.URL;
+
+import org.apache.xmlrpc.client.XmlRpcClient;
+import org.apache.xmlrpc.client.XmlRpcClientConfigImpl;
+
+public class RemoteTestHelper {
+
+ public static String BACKEND_URL = "https://agnes.ostwall195.de:9443/hsar/backend";
+
+ private static XmlRpcClient client;
+
+ public static XmlRpcClient getClient() throws Exception {
+ if (client == null) {
+ XmlRpcClientConfigImpl config = new XmlRpcClientConfigImpl();
+ config.setServerURL(new URL("https://agnes.ostwall195.de:9443/hsar/xmlrpc/hsadmin"));
+ config.setEnabledForExtensions(true);
+ client = new XmlRpcClient();
+ client.setConfig(config);
+ }
+ return client;
+ }
+
+}
diff --git a/hsarback/test/de/hsadmin/remote/UnixUserTest.java b/hsarback/test/de/hsadmin/remote/UnixUserTest.java
new file mode 100644
index 0000000..c68fb9c
--- /dev/null
+++ b/hsarback/test/de/hsadmin/remote/UnixUserTest.java
@@ -0,0 +1,240 @@
+package de.hsadmin.remote;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.fail;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.xmlrpc.XmlRpcException;
+import org.apache.xmlrpc.client.XmlRpcClient;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+
+public class UnixUserTest {
+
+ private static final String MODULE = "user";
+
+ private XmlRpcClient client;
+ private RemoteCASHelper cas;
+
+ @Before
+ public void setUp() throws Exception {
+ client = RemoteTestHelper.getClient();
+ cas = new RemoteCASHelper();
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ client = null;
+ cas = null;
+ }
+
+ @Test
+ public void testSearchAsPacAdmin() {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map whereParams = new HashMap();
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ whereParams };
+ try {
+ Object execute = client.execute(MODULE + ".search", params);
+ Object[] result = (Object[]) execute;
+ assertEquals(23, result.length);
+ for (Object o : result) {
+ if (o instanceof Map, ?>) {
+ Map, ?> row = (Map, ?>) o;
+ assertEquals("peh00", row.get("pac"));
+ } else {
+ fail("map expected");
+ }
+ }
+ } catch (XmlRpcException e) {
+ fail(e.getMessage());
+ }
+ }
+
+ @Test
+ public void testAddAsPacAdmin() {
+ int count = getObjectCount();
+ try {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map setParams = new HashMap();
+ setParams.put("name", "peh00-test2");
+ setParams.put("password", "test123");
+ setParams.put("quota", "128");
+ setParams.put("quotalimit", "192");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ setParams };
+ Object execute = client.execute(MODULE + ".add", params);
+ if (execute instanceof Map, ?>) {
+ Map, ?> entry = (Map, ?>) execute;
+ assertEquals("peh00-test2", entry.get("name"));
+ assertEquals("peh00", entry.get("pac"));
+ assertEquals(null, entry.get("password"));
+ } else {
+ fail("map expected");
+ }
+ } catch (XmlRpcException e) {
+ fail(e.getMessage());
+ }
+ assertEquals(count + 1, getObjectCount());
+ }
+
+ @Test
+ public void testAddAsPacAdminFail() {
+ int count = getObjectCount();
+ try {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map setParams = new HashMap();
+ setParams.put("name", "peh01-testfail");
+ setParams.put("password", "test123");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ setParams };
+ Object execute = client.execute(MODULE + ".add", params);
+ assertNull(execute);
+ fail("should fail");
+ } catch (XmlRpcException e) {
+
+ }
+ assertEquals(count, getObjectCount());
+ }
+
+ @Test
+ public void testAddWithFalseName() {
+ int count = getObjectCount();
+ try {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map setParams = new HashMap();
+ setParams.put("name", "peh00-langer-name");
+ setParams.put("password", "test123");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ setParams };
+ Object execute = client.execute(MODULE + ".add", params);
+ assertNull(execute);
+ fail("exception expected");
+ } catch (XmlRpcException e) {
+
+ }
+ assertEquals(count, getObjectCount());
+ }
+
+ @Test
+ public void testUpdateAsPacAdmin() {
+ int count = getObjectCount();
+ try {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map whereParams = new HashMap();
+ Map setParams = new HashMap();
+ whereParams.put("name", "peh00-test2");
+ setParams.put("password", "test1234");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ setParams, whereParams };
+ Object execute = client.execute(MODULE + ".update", params);
+ if (execute instanceof Object[]) {
+ Object[] a = (Object[]) execute;
+ for (Object o : a) {
+ if (o instanceof Map, ?>) {
+ Map, ?> entry = (Map, ?>) o;
+ assertNull(entry.get("password"));
+ assertEquals("peh00-test2", entry.get("name"));
+ } else {
+ fail("map expected");
+ }
+ }
+ } else {
+ fail("Object[] axpected");
+ }
+ } catch (XmlRpcException e) {
+ fail(e.getMessage());
+ }
+ assertEquals(count, getObjectCount());
+ }
+
+ @Test
+ public void testDeleteWithLongName() {
+ int count = getObjectCount();
+ try {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map whereParams = new HashMap();
+ whereParams.put("name", "peh00-langer-name");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ whereParams };
+ Object execute = client.execute(MODULE + ".delete", params);
+ assertNull(execute);
+ } catch (XmlRpcException e) {
+ fail(e.getMessage());
+ }
+ assertEquals(count, getObjectCount());
+ }
+
+ @Test
+ public void testDeleteAsPacAdminFail() {
+ int count = getObjectCount();
+ try {
+ String user = "peh01";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map whereParams = new HashMap();
+ whereParams.put("name", "peh00-test2");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ whereParams };
+ Object execute = client.execute(MODULE + ".delete", params);
+ assertNull(execute);
+ } catch (XmlRpcException e) {
+ fail(e.getMessage());
+ }
+ assertEquals(count, getObjectCount());
+ }
+
+ @Test
+ public void testDeleteAsPacAdmin() {
+ int count = getObjectCount();
+ try {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map whereParams = new HashMap();
+ whereParams.put("name", "peh00-test2");
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ whereParams };
+ Object execute = client.execute(MODULE + ".delete", params);
+ assertNull(execute);
+ } catch (XmlRpcException e) {
+ fail(e.getMessage());
+ }
+ assertEquals(count - 1, getObjectCount());
+ }
+
+ private int getObjectCount() {
+ int count = -1;
+ try {
+ String user = "peh00";
+ String grantingTicketURL = cas.getGrantingTicketURL(user, user);
+ Map whereParams = new HashMap();
+ Object[] params = new Object[] { user,
+ cas.getServiceTicket(grantingTicketURL, RemoteTestHelper.BACKEND_URL),
+ whereParams };
+ Object execute = client.execute(MODULE + ".search", params);
+ Object[] result = (Object[]) execute;
+ count = result.length;
+ } catch (XmlRpcException e) {
+ fail(e.getMessage());
+ }
+ return count;
+ }
+
+}
diff --git a/hsarback/webapp/WEB-INF/web.xml b/hsarback/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..bf09293
--- /dev/null
+++ b/hsarback/webapp/WEB-INF/web.xml
@@ -0,0 +1,289 @@
+
+
+
+
+ Queue Status Servlet
+ de.hsadmin.core.qserv.QueueStatusReceiverServlet
+ 1
+
+
+
+ CLI Client Connector
+ de.hsadmin.cliClientConnector.CLIClientConnectorServlet
+
+ proxyValidateUrl
+ https://agnes.ostwall195.de:9443/cas/proxyValidate
+
+
+ proxyServiceUrl
+ https://agnes.ostwall195.de:9443/hsar/backend
+
+
+ Components
+ user,member,contact,bankaccount,pac,paccomponent,hive,ipaddr,basepac,basecomponent,component,q
+
+
+ ComponentClass_user
+ de.hsadmin.mods.user.UnixUser
+
+
+ ComponentDescription_user
+ Unix User
+
+
+ ComponentClass_member
+ de.hsadmin.mods.cust.Customer
+
+
+ ComponentDescription_member
+ Mitglieder
+
+
+ ComponentClass_contact
+ de.hsadmin.mods.cust.Contact
+
+
+ ComponentDescription_contact
+ Kontaktdaten zu Mitgliedern
+
+
+ ComponentClass_bankaccount
+ de.hsadmin.mods.cust.BankAccount
+
+
+ ComponentDescription_bankaccount
+ Bankverbindungen
+
+
+ ComponentClass_pac
+ de.hsadmin.mods.pac.Pac
+
+
+ ComponentDescription_pac
+ Pakete
+
+
+ ComponentClass_paccomponent
+ de.hsadmin.mods.pac.PacComponent
+
+
+ ComponentDescription_paccomponent
+ Optionen der Pakete
+
+
+ ComponentClass_hive
+ de.hsadmin.mods.pac.Hive
+
+
+ ComponentDescription_hive
+ Hives
+
+
+ ComponentClass_ipaddr
+ de.hsadmin.mods.pac.INetAddress
+
+
+ ComponentDescription_ipaddr
+ IP Adressen
+
+
+ ComponentClass_basepac
+ de.hsadmin.mods.pac.BasePac
+
+
+ ComponentDescription_basepac
+ bestellbare Pakete
+
+
+ ComponentClass_basecomponent
+ de.hsadmin.mods.pac.BaseComponent
+
+
+ ComponentDescription_basecomponent
+ Zusammenstellung bestellbarer Pakete
+
+
+ ComponentClass_component
+ de.hsadmin.mods.pac.Component
+
+
+ ComponentDescription_component
+ bestellbare Optionen
+
+
+ ComponentClass_q
+ de.hsadmin.core.qserv.QueueTask
+
+
+ ComponentDescription_q
+ offene Aktionen
+
+ 1
+
+
+
+ XmlRpcServlet
+ org.apache.xmlrpc.webserver.XmlRpcServlet
+
+ enabledForExtensions
+ true
+
+
+
+
+ Queue Status Servlet
+ /queueStatus
+
+
+
+ CLI Client Connector
+ /hsadmin/cli-interface/
+
+
+
+ XmlRpcServlet
+ /xmlrpc/*
+
+
+
+ jdbc/HSAdminDB
+ javax.sql.DataSource
+ Container
+
+
+
+ jms/QueueCF
+ javax.jms.QueueConnectionFactory
+ Container
+ Shareable
+
+
+
+ jms/hsadminSystem-h01
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h02
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h03
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h04
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h05
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h50
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h51
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h52
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h53
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h54
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-h90
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-dns1
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-dns2
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-dns3
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-mail1
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-mail2
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-mail3
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminSystem-backupmx
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+ jms/hsadminStatus
+ javax.jms.Queue
+ Container
+ Shareable
+
+
+
+
+ Hostsharing Administrative Area
+ /*
+
+
+ CONFIDENTIAL
+
+
+
+