Changes Record
This document lists the changes from version to version. The
most recent version is at the top.
- Version 2.2
- Changed all code and samples to use JAXP; no
longer bound to Xerces.
- Removed many printlns from the server-side code,
replacing them with thrown Exceptions.
- A soap.war Web Application Archive is now
included in the distribution for easier
deployment to Servlet containers.
- Included SSL (on Tomcat) doc, and linked to it
from the Installation page.
- Added support for serializing/deserializing java.util.Maps.
- Added support for serializing/deserializing
BigDecimal <--> xsd:decimal.
- Removed non-threadsafe private variables from
Servlets.
- If a service method with a matching signature is
not found, a second search is done for a method
with an additional (first) parameter of type
SOAPContext.
- User's Guide has been re-worked and updated.
- COM sample has been updated.
- Added a BEA WebLogic EJB sample.
- Changed the EJB providers so that it grabs the
JNDIName from one of the 'options' instead of
from the 'java class=' section of the deployment
descriptor. For backwards compatibility if it
doesn't find it in the options section (using key="JNDIName")
then it will look in the old 'java class='
section.
- Added an XMLConfigManager.
- Added a BaseConfigManager (to make authoring
ConfigManagers easier).
- Fixed a bug when deserializing nulls of type
"ur-type", which are generated when the
VectorSerializer finds nulls inside a Vector.
- Removed requirement of <java> tag in
deployment descriptor when using pluggable
providers.
- Fixed a bug where a 400 error code was being
returned instead of the 500 required by SOAP.
- Fixed a bug in header parsing code .. it was
assuming that a space existed after the
":" character.
- Unmarshalling logic now understands 1999, 2000,
and 2001 Schema simple types.
- Unmarshalling logic can now deserialize payload
with ID/HREF attributes.
- RPCRouter can now throw a SOAPException if the
checkMustUnderstand property is set on the
DeploymentDescriptor and a mustUnderstand="1"
attribute is found on a header.
- The output buffer size can now be explicitly set
on the SOAPHTTPConnection.
- Added HTTP proxy basic authentication support.
- The SOAPHTTPConnection now has a maintainSession
property which, when true, will cause the
SOAPHTTPConnection to return the appropriate
cookies with requests. It is true by default.
- Added a default encoding style property to
SOAPMappingRegistry, to be used when no encoding
style is specified.
- Removed special treatment of CDATA sections in
the code that inserts escape sequences. The code
will now round trip Strings correctly, whether
they contain CDATA sections or not.
- All the simple numeric types now use a serializer
that does not run its content through Utils.cleanString(String).
- Cleaned up handling of servlet init-parameters in
RPCRouterServlet and MessageRouterServlet.
- Removed transport hook system property dependency.
The only remaining call to System.getProperty(String)
is to get "line.separator". This should
help with some of the security constraints for
Applets and the like.
- Removed some extraneous methods from org.apache.soap.util.StringUtils.
- Put 2 lines back into XMISerializer and XMIDeserializer (the same 1 line in each,
actually) to enable them to work with the xmisoap.jar which is posted on the site.
These lines were originally there, but were removed to try to work with the latest
XMI version. For now, the code works with the posted version.
- Added the BidBuy interoperability sample.
- Made DateSerializer.unmarshall(...) a little more lenient so that it handles parsing
dates with and without milliseconds specified.
- Added a Troubleshooting table, and a link to it from the front page.
- Added an Interoperability section to the User's Guide.
- Added a Migration section to the User's Guide.
- Fixed a bug in StatelessEJBProvider and StatefulEJBProvider where the
respEncStyle was being set, but not used.
- In RPCRouterServlet.doGet(...) and MessageRouterServlet.doGet(...), moved
res.setContentType(...) call before res.getWriter() call to be in compliance with
Servlet spec.
- Added install docs for iPlanet.
- Version 2.1
- Added message handling support
- Added configurable error handling mechanism
- Added pluggable provider support
- Added client-side HTTPS support
- Added HTTP proxy support
- Added HTTP basic authentication support
- Added support for SOAP
Messages with Attachments
- Introduced SOAPContext
- Added support for transport hooks
- Added SSL support
- Reduced dependency on xsi:type for
deserialization
- Added soap configuration file
- Added pluggable configuration manager
- Added support for international character sets
- Added support for default serialization/deserialization
of:
Hashtable
(as xmlsoap:Map
)
Date
(as xsd:timeInstant
)
GregorianCalendar
(as xsd:date
)
- Version 2.0
- Base version. No changes.