dug 01/07/25 11:00:22 Modified: java/src/org/apache/soap/server DeploymentDescriptor.java Log: Add support for opts on java and script services in the dd.xml file. (noticed and fixed by Uzay Takaoglu ([EMAIL PROTECTED]) Revision Changes Path 1.30 +27 -20 xml-soap/java/src/org/apache/soap/server/DeploymentDescriptor.java Index: DeploymentDescriptor.java =================================================================== RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/server/DeploymentDescriptor.java,v retrieving revision 1.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- DeploymentDescriptor.java 2001/06/28 21:04:03 1.29 +++ DeploymentDescriptor.java 2001/07/25 18:00:22 1.30 @@ -516,6 +516,25 @@ int scope = -1; String[] methods; + Element saved_E = e ; + nl = e.getElementsByTagNameNS(Constants.NS_URI_XML_SOAP_DEPLOYMENT, + "option" ); + for ( int i = 0 ; nl != null && i < nl.getLength() ; i++ ) { + String key, value ; + + e = (Element) nl.item(i); + key = DOMUtils.getAttribute( e, "key" ); + value = DOMUtils.getAttribute( e, "value" ); + + if ( key == null || key.equals("") ) + throw new IllegalArgumentException("Missing 'key' attribute on " + + "'option' element in deployment " + + "desriptor" ); + if ( dd.props == null ) dd.props = new Hashtable(); + dd.props.put( key, value ); + } + e = saved_E ; + if (typeStr.equals ("java")) { dd.setProviderType (DeploymentDescriptor.PROVIDER_JAVA); nl = e.getElementsByTagNameNS (Constants.NS_URI_XML_SOAP_DEPLOYMENT, @@ -571,26 +590,7 @@ dd.setProviderType (DeploymentDescriptor.PROVIDER_USER_DEFINED); dd.setServiceClass (typeStr); - Element saved_E = e ; - nl = e.getElementsByTagNameNS(Constants.NS_URI_XML_SOAP_DEPLOYMENT, - "option" ); - for ( int i = 0 ; nl != null && i < nl.getLength() ; i++ ) { - String key, value ; - - e = (Element) nl.item(i); - key = DOMUtils.getAttribute( e, "key" ); - value = DOMUtils.getAttribute( e, "value" ); - - if ( key == null || key.equals("") ) - throw new IllegalArgumentException("Missing 'key' attribute on " + - "'option' element in deployment " + - "desriptor" ); - if ( dd.props == null ) dd.props = new Hashtable(); - dd.props.put( key, value ); - } - // Support old 'java' tag - e = saved_E ; nl = e.getElementsByTagNameNS (Constants.NS_URI_XML_SOAP_DEPLOYMENT, "java"); if ( nl != null ) { @@ -698,6 +698,7 @@ } } +System.err.println("DD:" + dd.toString() ); return dd; } @@ -732,8 +733,14 @@ for (int i = 0; i < faultListener.length; lis.append(faultListener[i]), lis.append(" "), i++); lis.append("]"); + + StringBuffer opts = new StringBuffer(); + if (props != null) + opts.append( props.toString() ); + return header + body + "methods='" + methodsStrbuf + "', " + - "faultListener='" + lis + "', " + "mappings='" + mappings + "']"; + "faultListener='" + lis + "', " + "mappings='" + mappings + "'], " + + "opts='" + opts ; } /**