Skip to content

Commit

Permalink
Release 2.3.2 (#47)
Browse files Browse the repository at this point in the history
* Fix typo in config file (#44)

* Enhance request reader (#46)

* Replaced forceStop with recoverable error

- DirectoryPollingModule now moves the file to the error directory if it fails to process, instead of relying on forceStop
- DirectoryResenderModule already had error directory handling, simply removed forceStop

* Revert "#15 Provide recoverable solution to invalid file name in "toAny" folder"

* Release version 2.3.0 (#35)

* Upgrade to latest BuncyCastle libraries

* Cater for JRE and JDK location of JSSE certificate file

* Update developers guide

* Refactored maven configuration

- Introduced maven wrapper in order to stick to certain version of maven and eliminate dependency on local installation
- Moved dependencies and plugins to parent in order to have a single point version declaration
- Remove unnecessary configurations from poms
- Fix modules hierarchy
- Introduced SNAPSHOT version for further configuration of release process
- Removed IDE specific files
- Update .gitignore

* Improved Maven config

- Added automatically copied dependencies, no need to put jars into lib manually
- Renamed artifact names to standard since start-up scripts were improved
- Scripts and configs were relocated for further release process configuration
- Introduced maven-site-plugin for documentation uploading
- Removed obsolete Ant configuration since Maven wrapper can be used.

* State processing value fixes (#27)

* Fix the DIRECTION setting for database logging
* Set FILE_NAME of payload as early as possible to ensure it is logged in the state processing log events

* Fix uuid in stored file name (#28)

* Fix the DIRECTION setting for database logging

* Set FILE_NAME of payload as early as possible to ensure it is logged in
the state processing log events

* Remove redundant import

* Using direct setOption call instead.

* Remove automatically appending a UUID to the stored inbound files name

* Make OpenAS2Server more testable (#29)

* Make OpenAS2Server more testable

- Added a build for OpenAS2Server instance.
- Command processor initialization moved to XMLSession.
- H2DBHandler moved to appropriate package.
- Graceful shutdown on exit command.
- Added an integration test.
- All threads and timers were named in order to simplify profiling.
- Introduced a scheduler component for periodical tasks.
- Code cleanup and re-formatting.
- Bumped version.

* Minor enhancements and bugfixes (#30)

* Make message Id globally reconfigurable

* Make session object available in resend method to facilitate DB logging

* Update to use a specified format to avoid failure when format is
changed.

* Use a common method for generating the message ID between AS2 message
and MDN response

* Support InvalidParameterException exception in generatMessageId method

* Make information about app available as properties

* Use the Properties object for app info

* Remove hard coded app info

* Use Properties for app title

* Remove redundant method

* The terminate method will either call server shutdown method or teminate
JVM depending on flag

* Add the global default format for message ID generation

Change fileid to filename for format attribute on the generic directory
polling module instance

* Support access to server object via session and add mechanism to
determine if JVM shutdown should be allowed

* Allow payload file name to be accessed via message object if not
extracted from disposition

* Allow storing the server object

* Use common methid for genrating message ID.
Add some trace  logging to simplify debug

* Changes to support using external databases and make embedded DB handler
more generic to allow easier replacement with other embedded DB

* Persist all message attributes for pending files to retain information
through the lifecycle of the sent messages

* Support Random parameters on MDN file name format string

* Add 2 new paramters for controlling the DB tracking database

* Copy new "resources" folder containing DB utilities into distribution
package

* Start extending the developer related documentation

* Various additions and enhancements to documentation for 2.3.0 release

* Add a resend queued message state

* Split building the metadata from the actual message to facilitate new
functionality that depends on the metadata

* Support PRIOR_MSG_ID column for back reference tpo previous message send
attempt

* Add a state message log when resend is going to be attempted to provide
a final state to the old message

* Tools to create database table SQL and manage upgrade to database

* Sample script to run DDLUtils builder

* Set formal release number

* Update for latest release

* Refined LogManager (#31)

- Added default logger for cases when no logger are configured.
- Refactored initialization of LogManager

* Proxy server plus bug fixes (#33)

* Fixed exit command

- Added Session lifecycle controls.
- H2 server thread was still running event after shutdown() that prevented server from shutdown.

* Set the class to ActiveModule when building and returning a list of
active modules to avoid unnecessary class casts and check for running
modules to stop to avoid unnecessary calls.

* Remove call to stop modules method in stop() method for session since
destroy() method on processors modules does that.

* Add additional debug message to facilitate debugging

* Support proxy server

Support proxy authentication
Support handing the openConnection() method a proxy instance

* Remove redundant imports

* Support ASYNC MDN send retry

* Add default "retries" attribute to AS2SenderModule and
AsyncMDNSenderModule

* Support extracting key/value pairs from XML without changing key to
lowercase

* Avoid changing property names to lowercase when pushed into Properties
object

* Enhanced documentation and added Proxy server information

* Prevent the "fallback" parameter being set as the property value

* Release documentation

* Release notes updated

* Updated the valid version statement for new release

* Move messaging so it is relevant to the stage it is at. (#34)

* Minor enhancement to HTTP reader for debugging
  • Loading branch information
uhurusurfa authored and pete-gilchrist committed Aug 17, 2017
1 parent 008d546 commit 41f925e
Show file tree
Hide file tree
Showing 7 changed files with 46 additions and 26 deletions.
6 changes: 3 additions & 3 deletions Bundle/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.openas2</groupId>
<groupId>net.sf.openas2</groupId>
<artifactId>OpenAS2</artifactId>
<version>2.3.1</version>
<version>2.3.2</version>
</parent>

<artifactId>openas2-osgi</artifactId>
Expand Down Expand Up @@ -75,7 +75,7 @@
<artifactId>org.osgi.core</artifactId>
</dependency>
<dependency>
<groupId>org.openas2</groupId>
<groupId>net.sf.openas2</groupId>
<artifactId>openas2-server</artifactId>
<version>${project.version}</version>
</dependency>
Expand Down
21 changes: 6 additions & 15 deletions RELEASE-NOTES.txt
Original file line number Diff line number Diff line change
@@ -1,27 +1,18 @@
OpenAS2 Server
Version 2.3.1
Version 2.3.2
RELEASE NOTES

The OpenAS2 project is pleased to announce the release of OpenAS2 2.3.1
The OpenAS2 project is pleased to announce the release of OpenAS2 2.3.2

The release download file is: OpenAS2Server-2.3.1.zip
The release download file is: OpenAS2Server-2.3.2.zip
The zip file contains a PDF document providing information on installing and using the application.

Version 2.3.1 - 2017-08-06
Version 2.3.2 - 2017-08-17
This is a minor enhancement release:
IMPORTANT NOTE: Please review upgrade notes below if you are upgrading

1. Remove reserved characters from dynamically generated file names
2. Document feature to change reserved character list for file names.
3. Document java tuning requirements for large files
4. Change default logging date format to international standard
5. Document logging date format configuration
6. Document upgrade process as an appendix in OpenAS2HowTo
7. Prevent HTTP header folding by default with config option to allow. (Fixes issue with NGINX)
8. Change email logger to allow any exception to be logged through exception parser (not just OpenAS2Exception)
9. Add support for Sentry logger for exceptions
10. Enhanced documentation on logging system
11. Change default log file name to use international date format
1. Enhance the HTTP reader to allow logging the raw data when unable to determine how to process the data
2. Correct the config.xml that was missing a $ sign in the log file name

Upgrade Notes
See the openAS2HowTo appendix for the general process on upgrading OpenAS2.
Expand Down
4 changes: 2 additions & 2 deletions Remote/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<parent>
<groupId>org.openas2</groupId>
<groupId>net.sf.openas2</groupId>
<artifactId>OpenAS2</artifactId>
<version>2.3.1</version>
<version>2.3.2</version>
</parent>

<modelVersion>4.0.0</modelVersion>
Expand Down
4 changes: 2 additions & 2 deletions Server/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.openas2</groupId>
<groupId>net.sf.openas2</groupId>
<artifactId>OpenAS2</artifactId>
<version>2.3.1</version>
<version>2.3.2</version>
</parent>

<artifactId>openas2-server</artifactId>
Expand Down
26 changes: 24 additions & 2 deletions Server/src/main/java/org/openas2/util/HTTPUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,15 @@
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.util.Enumeration;
import java.util.StringTokenizer;

import javax.mail.Header;
import javax.mail.MessagingException;
import javax.mail.internet.InternetHeaders;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.openas2.message.Message;

public class HTTPUtil {
Expand Down Expand Up @@ -285,10 +290,27 @@ else if (ch >= '0' && ch <= '9') {
throw new IOException("Transfer-Encoding unimplemented: " + transfer_encoding);
}
}
else if (msg.getHeader("Content-Length") == null) {
else {
if (outStream != null)
HTTPUtil.sendHTTPResponse(outStream, HttpURLConnection.HTTP_LENGTH_REQUIRED, false);
throw new IOException("Content-Length missing");
Log logger = LogFactory.getLog(HTTPUtil.class.getSimpleName());
String headers = "";
Enumeration<Header> hdrs = msg.getHeaders().getAllHeaders();
while (hdrs.hasMoreElements()) {
Header h = hdrs.nextElement();
headers = headers + " :: " + h.getName() + "==" + h.getValue();
}
int b;
StringBuilder buf = new StringBuilder(512);
while ((b = dataIn.read()) != -1) {
buf.append((char) b);
}


logger.error("Inbound HTTP request: " + request.toString()
+ "\n\tHeaders: " + headers
+ "\n\tData: " + buf.toString());
throw new IOException("Content-Length missing and no \"Transfer-Encoding\" header found to determine how to read message body.");
}
}
else {
Expand Down
7 changes: 7 additions & 0 deletions changes.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
Version 2.3.2 - 2017-08-17
This is a minor enhancement release:
IMPORTANT NOTE: Please review upgrade notes below if you are upgrading

1. Enhance the HTTP reader to allow logging the raw data when unable to determine how to process the data
2. Correct the config.xml that was missing a $ sign in the log file name

Version 2.3.1 - 2017-08-06
This is a minor enhancement release:
IMPORTANT NOTE: Please review release notes for upgrade steps if you are upgrading
Expand Down
4 changes: 2 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.openas2</groupId>
<groupId>net.sf.openas2</groupId>
<artifactId>OpenAS2</artifactId>
<version>2.3.1</version>
<version>2.3.2</version>
<name>OpenAS2</name>
<packaging>pom</packaging>

Expand Down

0 comments on commit 41f925e

Please sign in to comment.