This file contains a detailed explanation of the changes between individual versions of XINS. $Id: CHANGES,v 1.2584 2013/02/20 08:23:40 agoubard Exp $ ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.1 RC 1: * Tools: - Fixed Jaxen download broken link. - Fixed JMeter broken link. - Updated Findbugs to version 2.0.2. - Updated JMeter to version 2.9. - Updated Jaxen to version 1.1.4. - Bumped dependencies in Maven to version 3.1. - Removed unneeded dependencies in the generated pom file. * Documentation: - Changed copyright from T-Mobile Netherlands to Online.nl. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.1 BETA 2: * XINS/Java Server Framework: - Simplified costly pattern check for ip address. * XINS/Java Client Framework: - Removed unneeded debug output. * XINS/Java Common Library: - Fixed incorrect URL in NingHttpClient. - XML serialization is now done with xmlenc library as it's faster. - Fixed incorrect error message in APISpec. * Tests: - Added more tests for ElementFormatter. * Libraries: - Upgraded httpclient and httpcore to version 4.2.3. - Added slf4j.jar 1.7.2 as needed dependency of async-http-client. * Build- and release-process: - Fixed profiling target. * Examples: - Fixed profiling target for the petstore demo. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.1 BETA 1: * XINS/Java Server Framework: - Fixed use cache only for successful results. - Fixed JSON-RPC 2.0 CC creation error. * XINS/Java Client Framework: - XINSCallRequests now accepts HTTP status code 304 (not modified). - Various fixes for not modified results. * XINS/Java Common Library: - Added detail message for the StatusCodeHTTPCallException. * Tests: - Added tests for Cache-control header. - Added CAPI test for not modified. - Added test for XINSServiceCaller and not modified. - Added tests for the JSON-RPC 2.0 calling convention. - Updated tests for new standard error codes. * Tools: - Fixed create-logdoc target with 3.0 logdoc format. * DTDs: - Removed logdoc dtd files as not needed. * Examples: - Added FastData function to allinone API. * Documentation: - Added documentation about cache and not modified. - Added documentation for JSON-RPC 2.0. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.1 ALPHA 3: * XINS/Java Server Framework: - Added Cache-Control header for all cacheable functions. - Added possibility to return HTTP 403 for not modified result. - Fixed function name added to backpack for all calling conventions. - Added handling of not modified in statistics. - Added handling of not modified in transaction logging. - Added JSON-RPC 2 calling convention. - FunctionNotSpecifiedException now extends InvalidRequestException. - Params for FunctionResult now stored in a LinkedHashMap. - Added the result codes: _FunctionNotSpecified, _FunctionNotFound, _InvalidRequestFormat, _NotAllowed, _DisabledAPI. - Added InvalidRequestFormatException. - Added possibility to set the HTTP status code in backpack. - Added information about the invalid request is returned to the client. - Moved handling of a disabled API in API.java. * XINS/Java Client Framework: - Added handling of not modified in XINSServiceCaller. - Added NotModifiedException thrown by CAPI when not modified is returned. * Generation of server-side Java code: - Added new NotModifiedResult class for not modified result. * Generation of specdocs: - Added paragraph for the cache. * Generation of opendoc: - Added paragraph for the cache. * DTDs: - Added possibility to define caching time for functions. * Tests - Set HttpClient logging to INFO. * Build- and release-process: - Added DTD files for version 3.1. * Documentation & examples: - Changed log4j settings according to the new httpclient specs. - Added list of standard error code in user guide. - Fixed Main.java example. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.1 ALPHA 2: * XINS/Java Server Framework: - The JSON calling convention will return an error status code for errors. - Improved used of generics. * XINS/Java Client Framework: - Added possibility to get and set the HttpClient in the XINS call config. * XINS/Java Common Library: - Fixed API initialized twice due to incorrect FileWatcher. - Added NingHttpClient to call API using Netty instead of HttpClient. - Improved Javadoc to HTTPCallConfig. * Tests - Fixed portal API started without runtime properties. * Libraries: - Recompiled znerd-util to make it work with Java 1.5. - Updated znerd-util to version 0.9-SNAPSHOT. - Recompiled logdoc to make it work with Java 1.5. - Updated logdoc to version 1.0-rc3-SNAPSHOT. * Documentation & examples: - Fixed classpath for petstore Netbeans build. - Added documentation on how to enable gzip compression on server side. - Improved integration with Spring with more documentation. - Added example for jQuery. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.1 ALPHA 1: * XINS/Java Server Framework: - Added notice logs at start-up to point out old JVM and Servlet container. * XINS/Java Common Library: - Use SystemDefaultHttpClient instead of DefaultHttpClient. - Added DecompressingHttpClient to handle compressed data. - Removed the logdoc package. * Libraries: - Added Ning Async-Http-Client version 1.7.9. - Updated Netty to 3.6.0. * Build- and release-process: - Added Netty library to the release. * Documentation & examples - Added performance chapter to user guide. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.0.1 FINAL: * Javadoc - Use default Java stylesheet (Works better for Java 7). * Generated build file: - Added logdoc.jar and znerd-util.jar to the generated war file. * Libraries: - Updated Java2HTML to 1.5.1. * Build- and release-process: - Small fixed for building Maven bundles. * Documentation & examples - Improved migration to XINS 3.0 article. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.0 FINAL: * Documentation & examples - Fixed incorrect "bagPack" text to "backpack". ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.0 RC 1: * Libraries: - Updated httpclient and httpcore from version 4.2 to 4.2.1. * Tools: - Added logdoc 1.0-rc2 to pom dependencies. - Removed jakarta-oro to pom dependencies. - Upgraded libraries in pom dependencies. - Removed logdoc.pom. * Build- and release-process: - Tested with Java 7. * Documentation - Added draft roadmap for XINS 3.1. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.0 BETA 2: * XINS/Java Common Library: - Changed the way the xsd is loaded for the XML type. - Improves unit tests for ElementList. * Libraries: - Updated Log4j from version 1.2.15 to 1.2.16. - Updated httpclient and httpcore from version 4.1 to 4.2. - Updated commons-codec from version 1.4 to 1.6. * Tools: - Fixed download of the tools URL (ibiblio no longer has Maven projects). - Upgraded all the tools to latest version. * Build- and release-process: - Added possibility to generate the installer on Windows 7 & 8. * Documentation - Updated user guide with XINS 3.0 features. - Fixed some 404 links on web site. * Examples - Fixed code no longer compatible with XINS 3.0. * DTD: - Added xml as possible type. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.0 BETA 1: * XINS/Java: - Used Java 5 features to simplify code. - Replaced CallExceptionList with List. * XINS/Java Common Library: - Close the connection for Netty handler to send the response. - Return 404 for /favicon.ico for Netty handler. * Generation of server-side Java code: - Replaced deprecated add method with addToDataElement. * Generation of client-side Java code: - Fixed conflit between mock and war when calling the "all" target. * Generation of the Java types: - Fixed missing project_node variable for a few templates. - Lists now always use generics. - Removed unneeded message. * Tools: - Fixed installer to work with latest version of Inno Setup. * Build- and release-process: - Added logdoc jar files to the release. * Librairies: - Updated logdoc to version 1.0-SNAPSHOT. - Added znerd-util version 0.6 as needed for logdoc. - Added license files for logdoc and znerd-util. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.0 ALPHA 3: * XINS/Java Common Library: - Use Java 5 features to simplify code. - URL with one slash should be considered correct. - Removed code written for Java 1.3 compatibility. - Use AtomicInteger for counters. - Use for each loops instead of Iterator. - Descriptor now implements Iterable. - Added NettyServletHandler to handle request using JBoss Netty. - Starts the WAR by default with Netty if in the classpath. - Added XMLType for XML with XSD validation. * XINS/Java Server Framework: - Use Java 5 features to simplify code. - Added possibility to defined xins.properties per API. - Added context ID in the statistics. - Added interceptors. - Added load balancer interceptor. - Moved context Id code from Engine to ContextIDInterceptor. - Moved transaction logging to TransactionLoggingInterceptor. - Put start time in the backpack and removed unneeded "start" parameters. - Moved statistics from Function to StatisticsInterceptor. - Log the time to start XINS & the API. * XINS/Java Client Framework: - Use Java 5 features to simplify code. - Let Java handle file URL in FileServiceCaller. - Fixed incorrect URL passed to XINSServletRequest in FileServiceCaller. * Generation of the Java types: - Added support for XML with XSD Schema validation. * Generation of server-side Java code: - Removed the need to cast RuntimeProperties for getApi().getRuntimeProperties(). * Generation of specdocs: - Fixed problem with POST in test forms. * Tools: - Fixed incorrect path to the JMeter xslt file. * Generated build file: - Added logging to see which API/port is running. - Added generation of the mock CAPI. - Added mock to the Client zip. * Build- and release-process: - Removed the need to compile Library.java separately. * Librairies: - Removed JMX RI. - Added Netty 3.2.7. * Documentation: - Fixed Javadoc. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.0 ALPHA 2: * XINS/Java Common Library: - Removed NodeListAdapter. - Moved ElementUtils methods to ElementFormatter. - Added Javadoc. - Removed Utils.getJavaVersion() method. - Added getFirstChildElement to ElementList. - Added PropertyException class. - Fixed HexConverter for empty byte[]. - Upgraded code and library to HttpClient 4.1. - Added DocumentBuilderPool to avoid creation of DocumentBuilder objects. * XINS/Java Server Framework: - Changed default reload of the runtime properties to 5 seconds. - Replaced use of ChainedMap with LinkedHashMap. - Added runtime property "org.xins.server.logging.init" to enable/disable initialization of Log4J. Default is true. - Added runtime property "org.xins.server.contextID.push" to enable/disable setting the NDC context ID. Default is true. - Added backpack to share data between calling conventions and functions. * Logdoc: - Used logdoc 0.13 from the logdoc github project. - Removed logdoc XSLT files. * Generation of server-side Java code: - Fixed bug that prevented to initialize shared instance. * Generation of web.xml: - Added possibility to add sub elements to web-app elements. * Librairies: - Upgraded JUnit to version 4.8.2. * Documentation: - Changed copyright from Online Breedband B.V. to T-Mobile Netherlands B.V. - Upgraded link to JavaSE Javadoc to Javadoc of JavaSE 6. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 3.0 ALPHA 1: * XINS/Java Common Library: - Used generics for collections. - Used Java regular expressions instead of Jakarta Oro Perl5. Note that it may break backward compatibility for some regexp. - ChainedMap is deprecated and replace with LinkedHashMap. - Removed xerces, xalan and xml-apis libraries. - Deprecated PropertyReader replaced by Map. - Library class now loads version from JAR manifest, once, at class init. - Removed checks for Java 1.4 as required version is minimum 1.5. - Replaced PropertyReader with Map. - Replaced Element with org.w3c.dom.Element. - Added ElementList to list the child elements of an element. * XINS/Java Server Framework: - Used generics for collections. - Library class now loads version from JAR manifest, once, at class init. - Replaced PropertyReader with Map. - Replaced Element with org.w3c.dom.Element. * XINS/Java Client Framework: - Used generics for collections. - Library class now loads version from JAR manifest, once, at class init. - Replaced PropertyReader with Map. - Replaced Element with org.w3c.dom.Element. * Generation of server-side Java code: - Replaced PropertyReader with Map. - Replaced Element with org.w3c.dom.Element. * Generation of client-side Java code: - Replaced PropertyReader with Map. - Replaced Element with org.w3c.dom.Element. * Librairies: - Removed Jakarta-oro library as no longer needed. * Tools: - Set JUnit to test scope for the generated maven pom. * Documentation: - Added CONTRIBUTORS file. - Move Copyright 2003-2008 Online Breedband B.V. to the COPYRIGHT file. * Build- and release-process: - Now minimum required Java version for XINS is Java 1.5. - Changed the way the release is uploaded to Maven repository. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.3: * XINS/Java Common Library: - Fixed bug #3021346: BeanUtils.getParametersAsString() cannot handle _list types. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.3 BETA 2: * XINS/Java Server Framework: - Fixed bug #2991113: IPv6 not supported. - Improved support for IPv6. * Generated build file: - Fixed bug #2991117: Generated build doesn't work with ANT 1.8.0. - Added includeantruntime attribute to javac to avoid warning. - Fixed bug #2991753: Shell script does not work. * Unit tests: - Fixed do not inherit Ant properties when running the test (api.version). - Use java.net for https tests. * Build- and release-process: - Fixed unknown reference to path.common with ANT 1.8.0. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.3 BETA 1: * XINS/Java Common Library: - Fixed bug #2816605: IllegalArgumentException declared but not thrown. - Fixed bug #1861794: Log message 1301 is logged at wrong time. - Fixed bug #2815318: A null Element attribute is counted as an attribute. - RFE #1864466: Let CallException indicate whether fail-over is allowed. * XINS/Java Server Framework: - Use Log4J NDC instead of ThreadLocal to store session in xins FF. - Reversed use of Log4J NDC in xins FF. - Creation of the API using the constructor of APIImpl. - RFE #2949336: _GetStatistics for just one function. * XINS/Java Client Framework: - RFE #2932709: Added transaction logging on the client side. * Unit tests: - Fixed empty lines in XSLT tests. - Added tests for equals with XML Elements. * Generation of server-side Java code: - Removed static SINGLETON field in APIImpl. - Functions are now created in the constructor of the API. * Generated build file: - Added create-project. - Call of xins version is done in the make-build.xml. - RFE #2947915: Allow JMX port to be specified. - Excluded API name from the Maven groupId. * Build- and release-process: - The releases now need to be uploaded via the browser. - Fixed unresolved classes for Netbeans. - Added Netbeans 6.7 project files. * Librairies: - Removed JSP and DTD files from servlet.jar as not needed. * DTD: - Added DTD files for XINS 2.3. * Documentation: - Fixed some broken links in the calling convention primer. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.3 ALPHA 2: * XINS/Java Common Library: - Fixed bug #2855100: HTTPServiceCaller creates too many open sockets. * XINS/Java Server Framework: - Improved detection of sub-domain for cookies in the xinsff convention. - Fixed bug #2884559: Adding domain to cookie only when valid in xinsff. - Removed exact number check for Servlet version, 2.2 or higher is supported. * Librairies: - Upgraded Commons Codec from 1.3 to 1.4. - Upgraded Commons Logging from 1.1 to 1.1.1. - Upgraded Commons Net from 1.4.1 to 2.0. * Build- and release-process: - Used the unless="no-ftp" instead of no-upload for targets without sshexec. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.3 ALPHA 1: * XINS/Java Common Library: - Catch possible missing InetAddress class in IPAddressUtils to make API's compatible with Google App Engine. - Inner classes of ChainedMap should also be Serializable. - If no description is set the spec package will return "" instead of null. * XINS/Java Server Framework: - Use IPAddressUtils to get the IP address for the APIManager. * Generation of specdocs: - Fixed bug #1847893: Regex pattern get padded with superflous characters. * Generation of the WSDL: - Fixed incorrect binding for resultcodes. - Fixed Incorrect indentation for input bindings. - Fixed Bug #2797857: Incorrect location of the SOAP binding operation. * Tools: - Added appengine target to deploy in Google App Engine. * Build- and release-process: - Stable version is 2.2 for maven. - Used ${www.url} property for xins URL for Maven mail. * Documentation: - Changed install primer to with "or later" after version numbers. - Added small precisions to the user guide. - Point Souceforge.net logo to project page as requested by Sourceforge. - Added section about output section possible in error codes. * Other: - Added XINS indentation preferences for NetBeans in nbproject/project.xml. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.2: * Build- and release-process: - Added clean target for the documentation. - Improved release-process.txt document. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.2 RC 1: * XINS/Java Common Library: - Declared _xml in the spec package. * Generation of server-side Java code: - _xml should translate to the XML class and not Xml. * Unit tests: - Added unit tests for the XML element. * Build- and release-process: - Clean done once before the tests when creating a release. - Improved documentation on creating a release. - Installer target also uploads the file. - Fixed upload-homepage target. * Documentation: - Added new features in the XINS user guide. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.2 BETA 2: * XINS/Java Common Library: - Fixed bug #1861811: Added possibility to specify an authority in a URL for the TargetDescriptor. * Generation of client-side Java code: - Fixed bug #2320665: "result" can not be used as input parameter name with capis. * Documentation: - Fixed incorrect documentation of the callxins task. - Removed invalid links in web site. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.2 BETA 1: * XINS/Java Common Library: - Fixed BeanUtils#populate to also populate from the data elements. * Unit tests: - Disabled test with http://xins.sourceforge.net/patterntest.php as the PHP no longer work. - Changed W3C URLs to Apache URLs as W3C doesn't accept HTTPClient requests anymore. * Build- and release-process: - Upload of the release is done using sftp instead of the deprecated ftp system. - Upload to the web site is done on a new server. - Added new required property sf.upload.dir for $HOME/.sourceforge.properties. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.2 ALPHA 2: * XINS/Java Common Library: - The fromString should throw the same TypeValueException as fromStringImpl. - The check of the value is done in fromStringImpl. - Added possibility for the HTTPServiceCaller to follow redirections. - Improved documentation of HTTPServiceCaller. - Added _xml simple type. - RFE 1863102: Make HTTPServiceCaller use controlTimeOut. * XINS/Java Server Framework: - Changed the way CompositeDataSupport is created for Properties in order to still compile with Java 6. - Fixed the way the percentage used statistics is computed. - RFE 2009573: Improve log message 3583. - RFE 2013460: Generate diagnostic context identifier if an invalid one is sent. * XINS/Java Client Framework: - Added possibility for the XINSServiceCaller to follow redirections. * Generation of server-side Java code: - Forward the details of the TypeValueException in the generated RuntimeProperties. * Generation of the WSDL: - Added name attribute to input and output elements for better .Net interoperability. - Added for better .Net interoperability. * Generated build file: - Fixed incorrect comment in help target, tools target -> help-tools target. * Logdoc: - Added to logs that are at FATAL level the class name and the message of the exception thrown if any. * DTD: - Added missing em in impl.dtd. * Other: - New copyright owner Online Breedband B.V. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.2 ALPHA 1: * XINS/Java Common Library: - Applied patch #1820583: Try to use the context ClassLoader to load a class using Class.forName(). - Added new method in Utils to try to get the context ClassLoader as Class.getContextClassLoader() is Java SE 5 dependent. - Implemented RFE #1809379: ElementParser.parse(File). - Implemented RFE #1812214: Element.getUniqueChildElement(). - HTTPServiceCaller is no longer final to allow alternative implementation like mocking. * XINS/Java Server Framework: - Changed the way the XML requests are cached as it caused errors with Tomcat 5.5. - Fixed incorrect unit logged for file watching interval. - Added APIServletSingleThreaded class that can be used in case you want the API to handle one request per thread at a time. - Fixed bug #1836531: Incorrect mapping for the SOAPMapCallingConvention. - Applied patch #1820583: Try to use the context ClassLoader to load a class using Class.forName(). - Statistics also return the percentage of memory used. * XINS/Java Client Framework: - XINSServiceCaller is no longer final to allow alternative implementation like mocking. * Generated build file: - Added a new attribute in impl.xml to dependency named 'deploy' to indicate whether the dependency should be deployed or not. By default the dependency is deployed. - PMD 3.9 is downloaded per default instead of PMD 3.7. * Generation of web.xml: - The APIServletSingleThreaded is used if one of the calling conventions declared in impl.xml is the Front-end CC. - Changed '/*' instead of '/' for the URL pattern in the generated web.xml as Tomcat 5 and 6 will return null for the getPathInfo otherwise. - Added new element web-app in impl.xml which allow to specify extra XML elements that you want to add in the generated web.xml file. * Documentation: - Added option for NetBeans 6 in case of unrecognized Request and Result objects. - Added partial documentation of the features added in XINS 2.2-alpha1. - Downgraded Docbook XSL to version 1.72.0 in order to have the table of content in the HTML generated pages. * DTD: - Added 2.2 DTD files. * Liraries: - Upgraded j2h.jar to version 1.5. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.1 RC 1: * XINS/Java Common Library: - Fixed the parameters were not propagated in the test form GUI if a check box or a combo box was used. - Changed e-mail from anthony.goubard@orange-ftgroup.com to anthony.goubard@japplis.com. - Null values are not allowed in PropertyReader. Setting a value to null should be consider the same as removing a value. * XINS/Java Server Framework: - Changed e-mail from anthony.goubard@orange-ftgroup.com to anthony.goubard@japplis.com. - Fixed possible NullPointerException when errorCode != null as the function specification should be used only for successful results. - Fixed bug #1787022: API.getAPISpecification() returns null during bootstrap. * XINS/Java Client Framework: - Changed e-mail from anthony.goubard@orange-ftgroup.com to anthony.goubard@japplis.com. * Generation of the WSDL: - The default value for a date or a timestamp has a different format in XML Schema. * Generation of the unit tests: - Fixed the environment file was not detected for the test forms. * Generated build file: - Fixed: changing XINS version didn't regenerate a new build.xml. - xins_home property should be passed to the call to build.xml. * Build- and release-process: - Updated xins maven version to 2.1. * Tools: - Updated the download of Glean to version 1.2.1. - Updated maven tools to point to xins 2.1. * Installer: - Changed the script installer to make it more independant of the project location and the OS. * Documentation: - Moved articles to the articles directory. - Added new article about the performance of XINS compare to other Web Services frameworks. - Added presentation of the features added in release 2.1. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.1 BETA 3: * XINS/Java Common Library: - Cleaned code with PMD such as removed unused imports. - Fixed possible NullPointerException in PropertyReaderUtils. - Renamed getWARFile() method to getWarFile(). - Cleaned code with CheckStyle such as fixed Javadoc. - Added @since XINS 2.1 for new methods and new classes. - Implemented RFE#1787031: New constructor for BootstrapException. - Added new method PropertyReaderUtils#getWithDefault to get a property value or the specified default value. - Added logs to the HTTPFileWatcher in case of I/O error. * XINS/Java Server Framework: - Cleaned code with PMD such as removed unused imports. - Cleaned code with CheckStyle such as fixed Javadoc. - Added @since XINS 2.1 for new methods and new classes. * XINS/Java Client Framework: - Cleaned code with PMD such as removed unused imports. * Generation of the unit tests: - Fixed missing import for the Log4J properties. * Build- and release-process: - Automatic update of the xins-docs/build.xml with the new version number when creating the release. * Documentation: - Adapted README.html for this 2.1 release. - Removed the lists.html as the forms on this page did work. This page has been replaced with the mailman page. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.1 BETA 2: * XINS/Java Server Framework: - The input parameters are cloned using another method than calling the clone method as the Map could be something else than ChainedMap. - If the CallingConvention#convertRequest throws an InvalidRequestException, the stack trace of the cause is printed. * XINS/Java Common Library: - Added more help text for the command java -jar .war -help. - Temporary files created by the internal Servlet container should be deleted when stopped. * Generation of server-side Java code: - Fixed add methods was generated for input data section element instead of list methods. * Generation of specdocs: - Added xins-project description to the main specdocs index.html. * Generated build file: - The clean target regenerates a fresh build.xml. This allows to append commands such as 'xins clean war-myapi'. - The clean- also removes the main build.xml and regenerates a fresh one. * Tools: - Added Glean in the download-tools target. * Build- and release-process: - Download JMX is needed to rebuild xins binaries. * Libraries: - Upgraded Log4J to 1.2.15. - Upgraded docbook XSLT to 1.73.2. - Upgraded xins-docs/lib to FOP 0.94. * Examples: - Fixed the org.xins.server.config property should be passed to the test target in the nbbuild.xml file. * Documentation: - Added XINS 2.1 features to the user guide. - Added chapter about integration with other frameworks to the user guide. * DTD: - Added possibility to have a description in the xins-project.xml. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.1 BETA 1: * XINS/Java Server Framework: - Replaced the name of the cookie set in the front-end CC from SessionId to SessionID. - Applied patch of RFE #1634856: Make public methods in FunctionResult throw IllegalArgException. - Applied patch of RFE #1634899: Refactor server so transactions are logged in one place. - Fixed include of other runtime properties files. - Fixed loading remote runtime properties on Windows. * XINS/Java Common Library: - Improved specification GUI and test form. - Added getDefault() method to ParameterSpec to get the specified default value of the parameter or attribute if any. - Added a regular expression log filter to the Console GUI. - Added new method getDescription() to Type and to the standard types. - Improved XML Viewer to print doctype declaration. - Specification GUI: no indentation if the meta function called is _WSDL. - Specification GUI: Name of the API displayed as header. - Specification GUI: Fixed meta function _CheckLinks instead of _CheckSettings. - TestFormPanel: Improved layout, default value displayed, background color if the value is invalid, and much more. - Added tool to test regular expression with the SpecGUI. - Do not output namespace for attributes in XML Element if already done. * Generation of client-side Java code: - Fixed if the input data element contained another data element the 'add' method was not generated. * Generation of the Java types: - Implemented getDescription() method for all defined types. * Generation of web.xml: - Added a comment on where to apply Servlet filters. Servlet filters can be used for example for compression, authentication, encryption or auditing. * Generated unit tests: - Added default Log4J configuration. * Generated WebStart file: - Added more comments. - Added XSLT used to generate the WebStart file to the release. * Generated build file: - Fixed error when generating WAR file for an API with categories. - Fixed incorrect directory specified for the javadoc-test- target. - Fixed the logdoc properties should be passed as parameters to . * Tools: - Added new tool "glean" that generates the Glean report for an API. More information about Glean at http://jbrugge.com/glean/index.html. * Tests: - Added test for the include of other runtime properties files. - Added test for the _xins-soap-map calling convention. - Added test for the ACL based on calling convention. * Librairies: - Upgraded Commons HttpClient from 3.0.1 to 3.1. * Examples: - Fixed the rest API did not compile. * Documentation: - New front-end page for the web site. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.1 ALPHA 3: * XINS/Java Common Library: - Implemented SF.net RFE #1771569: Implement equals/hashCode on ServletConfigPropertyReader. - Added unit test for the FunctionResult class. - SimpleDateFormat is not thread-safe so any use of it should be synchronized. - Changed ChainedMap to be cloneable and serializable. - The Element object uses ChainedMap for the attribute list instead of HashMap in order to have the attribute in the same order as the way they were set. - Implement equals and hashCode for Element. - Added support for the namespace prefix in Element. - Possibility to change the namespace prefix and URI for an Element. - Added possibility for the FileWatcher to monitor several files at once. - Added HTTPFileWatcher that monitors several URLs at once. - Added support in BeanUtils for method using 'is' or 'has' to return a boolean instead of 'get'. - Improved parsing of the arguments for java -jar . - Added graphical user interface to the Servlet container. - Changed the default logged pattern by moving NDC to after the log level. - Added graphical user interface for the specifications. - Added an XML syntax highlighting Swing component. - Added test form user interface. * XINS/Java Server Framework: - SimpleDateFormat is not thread-safe so any use of it should be synchronized. - Added _xins-soap-map calling convention that transforms the SOAP request as the wsdl-to-api command does. The output parameters and data section are also mapped to generated a SOAP XML tree. - Fixed incorrect transformation of output data element attributes in the SOAP calling convention. - ChainedMap is used instead of HashMap for the session properties and the input parameters in order to have them in the same order as the way they were set. - Added new runtime property org.xins.server.config.include which offer the possibility to include runtime properties files. - Added possibility to specified a URL for the runtime properties file. - Changed the default logged pattern by moving NDC to after the log level. - Fixed bug #1778917: Missing struct before member for output data element in the XML-RPC calling convention. * XINS/Java Client Framework: - Overridden hashCode and equals in AbstractCAPICallRequest so that two similar requests are equals. * Generated build file: - Passed the DTD reference to the antcall sub-targets. - -load-properties should be called before wsdl-to-api and xsd-to-api. - Fixed property conflict problem when targets of different APIs were called. - Fail if the runtime-properties or bootstrap-properties are missing while runtime properties or bootstrap properties are defined. - If impl.xml is changed the index.html of the specdocs need to be regenerated. - Fixed chainedmapper is not supported as direct mapper for the Ant task with Ant 1.6.2. - Fixed missing api name for the client command. * Generation of specification documentation: - Fixed error when a shared error code was defined in the examples. - inclusive-or and exclusive-or param combos should use 'or' to parameters. - Check that the name defined in the function file is the same as the name of the function. - The pattern type could be tested directly in the page using Javascript. * Generation of the OpenDocument Format: - inclusive-or and exclusive-or param combos should use 'or' to parameters. * Generation of the API from the WSDL: - Fixed invalid variable to create the error code file. - Fixed invalid call to a non-existing template. - The name of the element should be used for the element name and not the type name. * Tools: - Added new tool "webstart" that generates the Web Start file (also named JNLP file) for an API. * DTD: - Removed the patterntest element in the xins-projects.dtd as no longer used. ______________________________________________________________________________ CHANGES INTRODUCED IN XINS 2.1 ALPHA 2: * XINS/Java Common Library: - Fixed null values were put in the Map when using the BeanUtils#getParameters method. - The ServletClassLoader can detect the xins-common.jar using the XINS_HOME environment variable if needed. - Added automatic detection of the WAR file in the HTTPServletStarter when not passed as parameter. - Added possibility to pass the ClassLoader mode to the HTTPServletStarter. - Added new Ant task similar to the task with the option to never overwrite the destination files. - Added possibility to handle several request at the same time in the internal Servlet container (multi-threaded). * XINS/Java Server Framework: - Fixed the way the xins.properties was loaded when no org.xins.server.config is set was incorrect. - Implement RFE #1624142: ACLs for calling conventions. /!\ The allow methods have a new argument (that can be null). - Added getName and setName methods in the calling convention classes. * Generation of the opendoc: - Added colors to the examples. - Enlarged the example tables. - Added colors to the table headers. - Added the categories after the API description. - Use Courier New font for element names. - Added light gray borders to the tables. - Reduce the use of bold fonts. - Fixed missing uppercase for input and output section. - Fixed the description of the function, parameters and error was just the first sentence. - Fixed support for element in descriptions. - Fixed the "4" appearing before closing an element example. * Generated build file: - Added javadoc-test- to get the Javadoc of the unit tests. - Added possibility to execute the API using 'java -jar .war' - Replaced create-project.xslt and tools.xslt with build-create.xml and build-tools.xml as most of the code doesn't need to be dynamically generated. - Added build-apis.xml which contains static content of the old generated build.xml. This result in the reduction of the size of the generated build.xml. - Several bug fixes and optimalization during the refactoring. - The dependency libraries have been added to the classpath for the run and test targets. * Generation of specification documentation: - Fixed multiple textarea when there are multiple input data elements. * Documentation: - Changed