All Downloads are FREE. Search and download functionalities are using the official Maven repository.

mp4j.1.9.1f.source-code.CHANGES.txt Maven / Gradle / Ivy

There is a newer version: 3.8.2
Show newest version

CHANGE LOG OF SNMP4J
====================

[2008-03-18] Version 1.9.1:

* Improved: OID parsing from string now supports embedded
  string to OID conversion, for example the following OIDs
  are equal:
    a = new OID("1.3.6.2.1.5.'hal.'.'''.'lo'.1");
    b = new OID("1.3.6.2.1.5.104.97.108.46.39.108.111.1");
* Improved: Added factory pattern for creating PDU for
  incoming messages parsed by message processing models.
* Fixed: Null LogLevel returned by JavaLogAdapter.getLogLevel.
* Fixed: With async request processing and retry>0 there
  could have been a race condition where a response event
  had been generated twice for a request.
* Fixed: ArgumentParser option multi parameter support
  which failed to parse options like "-option param1 param2"
  correctly.
* Changed: MessageDispatcherImpl can now be used to register
  more than one transport mapping per address class (UDP/TCP).
  Nevertheless, only the first registered one will be used
  for sending SNMP messages if no specific transport mapping
  is given.
* Improved: Target is cloned when used internally by Snmp
  instance to avoid errors through concurrent target usage.

[2008-01-31] Version 1.9:

* Improved: PDU.add(VariableBinding) no longer clones
  VariableBindings while adding it if the contained variable
  is dynamic. Instead VariableBinding.setVariable clones
  the set variable always as well the oid set by setOid(OID).
* Improved: Added factories for thread and timer instances
  configurable through SNMP4JSettings class.
* Improved: Created interfaces for ThreadPool (WorkerPool)
  and thread of execution (WorkerTask) as well as Timer
  (CommonTimer) for better Java EE intergration.
* Added: ArgumentParser for simple command line parsing.
* Fixed: Local engine ID could not be set for simple PDU
  request for the command line tool.

[2007-11-06] Version 1.9 RC2:

* Fixed: Walk modus of console example.
* Added: -Ocs and -Ods to create and dump subtree
  snapshot files.

[2007-10-18] Version 1.9 RC1:

* Fixed: LogFactory.getLogFactory() returned null if
  log factory has not been initialized yet. Now
  a new instance of LogFactory is returned instead.
* Fixed: Typo in Snmp JavaDoc (getPdu() -> getPDU()).
* Added: Hook-up method in DefaultTCPTransportMapping
  to allow setting socket options by extending the
  class and overwriting the setSocketOptions method.
* Added: TripleDES-EDE privacy protocol implementation.
* Changed: SecurityProtocol interface to allow dynamic
  key extension.
* Fixed: Race condition in DefaultTCPTransportMapping.

[2007-05-04] Version 1.8.2:

* Fixed: Null.clone() did not copy/preserve syntax.
* Fixed: MPv3.addEngineID added engine ID to the local cache
  although if it matched the local engine ID.

[2007-04-23] Version 1.8.1a:

* Fixed: No error was reported by TableUtils when sending
  of a request failed.
* Fixed: MPv3.removeEngineID fired "engine ID added"
  event.

[2007-03-12] Version 1.8.1:

* Fixed: Race condition in DefaultTCPTransportMapping
  that could cause message loss because messages are
  accidentially never send (because at the same time
  another message came in).
* Improved: Snmp.addNotificationListener(..) sets the
  connection timeout to 0 for TCP transport mappings.
* Fixed: Snmp.removeNotificationListener(..) caused
  memory leak because it did not deregister the
  notification transport mapping properly.
* Fixed/Improved: Several code cosmetics and Serializable
  issues.
* Improved: REPORT messages are now sent over the same
  transport mapping as the message reported on has been
  received. This improves firewall interoperability.

[2007-02-01] Version 1.8:

* Fixed: Race condition with sync requests in Snmp.send
  that could cause a deadlock.
* Fixed: Added missing serialVersionUIDs.
* Changed: PduHandleCallback.pduHandleAssigned(..) to
  use Object as type of the PDU reference.

[2007-01-08] Version 1.8 RC1:

* Changed: Variable is now an interface and the former
  abstract class implementation is now moved to
  AbstractVariable. Serialized Variables from 1.7.x
  or earliers released can be deserialized with 1.8
  because the Variable interface defines the same
  serialVersionUID as the former Variable abstract class.
* Fixed: MessageDispatcherImpl.getMessageProcessingModel
  no longer throws an ArrayIndexOutOfBoundsException
  when the requested model is not known.
* Added: GenericAddress constants for the default address
  types "udp", "tcp", and "ip".
* Fixed: OctetString.fromSubIndex for implied length values.
* Added: Constants for default command responder and
  notification receiver ports in SnmpConstants class.
* Added: Append constructor for OID class, to facilitate
  creating an instance OID from a class OID and an index
  OID.
* Improved: DefaultTcpTransportMapping can now also
  reconnect if its connection is in state "unconnected".
* Fixed: OctetString.startsWith did not work if prefix
  length did not match the string's length.
* Added: Option (-m) to set maxMessageResponseSize for
  SNMPv3 requests in console example.
* Improved: Clarified and implemented TODOs left from
  earlier versions.
* Fixed: IllegalStateException seldom occured in a race
  condition while waiting for a sync response in
  Snmp.send(..) or when canceled an async response while
  a retry was started.
* Improved: Performance of message sending and receiving
  due to less (narrow) synchronization.
* Added: -l option to SnmpRequest console example to
  allow setting the local engine ID to avoid engine ID
  conflicts.
* Added: -b option to set the engine boots counter for the
  console example (SnmpRequest).
* Added: TreeUtils to conveniently walk sub-trees.
* Fixed: Bug in LogLevel class causing incorrect log levels
  to be used in some cases when converting from a levels
  string representation.
* Improved: JavaLogAdapter DEBUG level from SNMP4J (Log4J)
  now maps to FINE in Java logging.
* Added: LogFactory can now be configured through the
  system property "snmp4j.LogFactory" with the factories
  class name.
* Added: LogProxy for implementing late logger binding.
* Changed: BERSerializable no longer extends Serializable.
* Added: Security check for transport not listening when
  sending confirmed PDU.

[2006-10-07] Version 1.7.6a:

* Fixed: Possible deadlock in ThreadPool when
  stopping a busy thread pool.

* Added: SMIConstants.SYNTAX_BITS to map to
  SMIConstants.SYNTAX_OCTET_STRING.
* Added: TableUtils.destroyRow(..).
* Fixed: Opaque.clone() was missing.

[2006-09-04] Version 1.7.5:

* Changed: VariableBinding(OID, Variable) now checks OID
  for not being null.
* Fixed: MessageDispatcherImpl.addAuthenticationFailureListener
  did not work.
* Fixed: OctetString.split(OctetString, OctetString).

[2006-08-19] Version 1.7.4a:

* Fixed: Concurrent access to the internal server
  thread during close() calls does no longer cause
  a NullPointerException. The synchronization that
  caused a deadlock in 1.7.4 has been removed again.
* Added: Support for the obsolete SMI type BIT STRING
  for compatibility with very old SNMPv2 draft
  implementations. In order to activate support for it
  call SNMP4JSettings.setExtensibilityEnabled(true).
  See also the org.snmp4j.smi.BitString class.

[2006-08-03] Version 1.7.3:

* Added: SnmpConstants.getTrapOID to convert a v1 trap info
  to a v2/v3 notification OID.
* Improved: PDU and PDUv1 now check against setting a wrong
  PDU type for that PDU class (i.e. V1TRAP is not allowed
  for PDU and ScopedPDU and NOTIFICATION is not allowed for
  PDUv1).
* Added: DefaultPDUFactory.createPDU(int targetVersion).
* Changed: PDUv1.toString() to use PDU.toString() for all PDU
  types other than PDU.V1TRAP.
* Added: Constructor to DefaultUDPTransportMapping to create
  a socket that reuses an address that is in timeout state
  after a closed connection (TIME_WAIT).
* Fixed: Fixed multi-threading issue in MPv3 where the incoming
  request pdu handle was overwritten which caused state information
  to get lost when more than one incoming request were processed
  concurrently.

[2006-05-29] Version 1.7.2:

* Added: JavaLogFactory and JavaLogAdapter for Java logging.
  This is now also the default logging for the SnmpRequest
  tool.
* Improved: OctetString.isPrintable to accept whitespaces as
  printable characters.
* Fixed: When connection closed remotely the corresponding
  event has not been fired in all cases (DefaultTCPTransportMapping).

[2006-04-24] Version 1.7.1:

* Fixed: Stackoverflow in OID.nextPeer().
* Added: ConnectionOrientedTransportMapping.close(Address peerAddress).
* Improved: Reporting of RuntimeExceptions while handling retries.

[2006-04-10] Version 1.7:

* Improved: Logging interface enhanced.
* Added: Variable.toInt() and Variable.toLong() to reduce
  casting when converting to native integer or long values.
* Fixed: OID.mask.
* Added: When PDUv1 decodes a Counter64 object, a
  MessageException is thrown.
* Added: OID.nextPeer(), OID.successor(),
  and OID.predecessor().
* Fixed: ThreadPool.stop() blocked.
* Fixed: Additional retries with sync requests when first
  try failed and second (or second to last) succeeded.
* Fixed: Possible NullPointerException when closing Snmp.
* Improved: Closing UDP default transport mapping first
  disconnects socket before closing it.
* Fixed: Possible ConcurrentModificationException when using
  List returned by sync TableUtils.getTable(..).
* Added: OctetString.fromByteArray to create an OctetString
  from a byte array.
* Improved: OID.successor() to build correct successor for
  128 subidentifier OIDs.
* Added: OID.min(OID a, OID b) and OID.max(OID a, OID b)
* Fixed: Handling of remote disconnect of TCP transport
  mapping.
* Added: ConnectionOrientedTransportMapping interface and
  TransportStateListener event listener.
* Added: Variable.getSyntaxString().
* Fixed: Bug in Snmp.send(PDU pdu, Target target,
  TransportMapping transport) which did not propagate the
  transport mapping.
* Added: UsignedInteger32(int) and UsignedInteger32(byte)
  constructor.
* Fixed: Set SnmpMessageLengthDecoder as default for
  DefaultTCPTransportMapping.
* Added sysOREntry OID constant in SnmpConstants.

[2005-12-27] Version 1.6e:

* Improved: Performance of TableUtils by using a better
  end condition when traversing a table.

[2005-12-06] Version 1.6d:

* Fixed: SNMP4J did not detect USM out-of-time-window errors
  when checking non-authoritative times.

[2005-11-30] Version 1.6c:

* Fixed: Sync requests were not removed from pending requests list
  when a response has been received which resulted in additional
  retries.

[2005-11-23] Version 1.6b:

* Fixed: Request ID handling for request IDs > 2^31.
* Fixed: If request ID < 0 of a incoming request a different
  request ID has been sent with the corresponding response.
* Changed: To let SNMP4J generate a request ID it has to be
  provided as 0 (negative request IDs will no longer result
  in a new request ID being generated)
* Fixed: Memory leak when sending synchronous requests introduced
  in v1.6beta. The memory leak was caused because the pending
  message is not removed when a response has been received which
  also led SNMP4J send requests messages even though a response
  had already been received.

[2005-10-23] Version 1.6:

* Fixed: Retry handling of Snmp.
* Added: TaskScheduler and SchedulerTask.
* Added: MessageDispatcher.getTransport(..) and made corresponding
  private method in MessageDispatcherImpl public.

[2005-10-13] Version 1.6 RC 1:

* Fixed: Asynchronous Snmp.inform() used wrong PDU type (GETBULK
  instead INFORM).
* Fixed: MessageDispatcherImpl did not set peer transport mapping
  in StateReference (needed to respond correctly if multiple TCP
  transport mappings are used).
* Fixed: IpAddress.equals(Object o) threw ClassCastException if
  o was not an IpAddress.
* Added: Static method PDUFactory.createPDU(..).
* Improved: Made Target cloneable.
* Fixed: Fixed execution of broadcast requests in Snmp.java.
* Added: tryToExceute in ThreadPool and added two other methods
  to better interrupt/cancel tasks.
* Added: Interface for external handling of reports in Snmp.
* Added: ConsoleLogAdapter and ConsoleLogFactory for console
  logging.

[2005-08-24] Version 1.6 beta 1:

* Added: LogAdapter.fatal(..) methods.
* Fixed: TransportIpAddress.parse did not parse IPv6 addresses
  correctly.
* Improved: Introduced TransportListener interface to clearly
  separate TransportMappings from MessageDispatchers.
* Fixed: BER length encoding of length > 2^31.
* Added: TransportMapping.getListenAddress() returns the listen
  address of transport mappings.
* Fixed: Initialization of CommunityTarget SNMP version to 1
  for constructor with address.
* Fixed: MessageDispatcherImpl.getNextRequestID() did return 1
  after max int has been reached for all negative integer values.
* Fixed: Snmp.processReport(..) did not remove pending request
  when a final report has been received.
* Fixed: Counter64.getBERLength() [Thanks to Jim Doble].
* Added: SnmpEngineEvent and Listener that provide a callback
  hook for engine ID cache updates of the MPv3 local storage.
* Changed: UsmUserTable.UsmUserKey is now public.
* Improved: Hash code computation for UsmUserEntry.
* Fixed: Snmp.send(PDU,Target,TransportMapping) did not pass
  the transport mapping to the underlying calls.
* Added: Support for localized USM users.
* Fixed: Sometimes lost MPv3 cache information when processing
  reports (out of time, etc.) due to garbage collection on
  WeakHashMap.

[2005-04-26] Version 1.5:

* Fixed: Encoding of OIDs with sub-identifiers > 2^31.
* Fixed: Counter64 encoding error for some values > 2^24.
* Fixed: Timeout option descritpion of console tool.
* Added: Some debug messages for notInTimeWindow exceptions.
* Changed: Address is now an interface (was an abstract class).
  An new abstract base class for IpAddress and TransportIpAddress
  has been introduced which is called SMIAddress. Because of the
  class type change of Address you will need to recompile your
  application, when upgrading to SNMP4J 1.5.
* Improved: UdpAddress and TcpAddress BER encoding routines
  now encode the respective address as OCTET STRING according
  to the TRANSPORT-ADDRESS-MIB.
* Fixed: ThreadPool.stop did not notify TaskManagers which
  could block the stop() method execution.
* Improved: By default system properties are no longer used
  to determine SNMP4J configuration, instead the configuration
  (which transport protocols, security protocols, SMI syntaxes,
  address types, etc. to use) is hard coded and contains all
  available features. To add additional features without
  changing SNMP4J classes/code, use the
  SNMP4JSettings.setExtensibility method.
  Consequently, SNMP4J can now be used with Applets.
* Added: OID.mask(OctetString) to mask an OID by a bit string.
* Added: TransportIpAddress.getValue() which returns the
  address value as a byte array.
* Fixed: Typo in -OtCSV options and description CVS changed into
  CSV.
* Added: snmpInPkts counter support.
* Improved: Console example can now be extended more easily.
* Changed: Made Snmp default constructor public.
* Added: Snmp(MessageDispatcher).

[2005-04-04] Version 1.2.1:

* Changed: Due to incomplete state of Log4J 1.3-alpha6 and
  for the sake of a more flexible logging interface the
  new package org.snmp4j.log has been introduced. By default
  SNMP4J does not use logging. To enable logging, for example
  Log4J logging which is supported out-of-the-box, use
  "static { LogFactory.setLogFactory(new Log4LogFactory());}"

[2005-03-30] Version 1.2:

* Improved: Replaced the log4j-1.3alpha-6.jar with a patched
  version that does not print out Log4J internal messages.
  These internal logging messages will be also removed from
  the official log4j 1.3 version once it is released as beta.
* Added: OctetString.startsWith(OctetString).

* Changed: Logging API again back from JCL to Log4J-1.3's
  UGLI independent logging interface.
* Improved: Privacy protocols know also return their maximum
  key length. Privacy keys now adhere to that maximum length
  when keys are generated by passwordToKey.
* Added: USM.getSecurityProtocols()
* Added: OID.toByteArray() to simplify conversion of index OIDs
  to SMI values.
* Fixed: OctetString.compareTo function did not compare
  byte values as unsigned causing wrong ordering of bytes > 127.
* Added: OctetString.set(int, byte).

* Changed: Target is now an interface (as an abstract
  class). AbstractTarget has been introduced which
  implements the same functionality as the former Target
  object. CAUTION: v1.2 is therefore *not* binary compatible
  with older versions. Please recompile your classes when
  upgrading to v1.2!
* Fixed: Snmp.trap threw always an exception.
* Added: USM.updateUser(..) and new constructor that accepts
  a custom SecurityProtocols set.
* Added: zeroDotZero to SnmpConstants.
* Changed: Log4J logging is now wrapped by the Apache
  commons logging to be more independent regarding the
  used logging framework.
* Fixed: notInTimeWindow report was sent with wrong
  securityLevel (should be authNoPriv - was noAuthNoPriv).
* Improved: StateReference now also holds the TransportMapping
  that was/should be used to communicate with the peer.
* Fixed: Added missing clone() method to TimeTicks.
* Added: Range option for plain OIDs for the command line
  parsing of the SnmpRequest command line tool. The range
  specification allows more convenient specification of the
  columns of a table (for example '1.3.6.1.2.1.2.2.1-18').
* Fixed: JavaDoc of Snmp class used deprecated methods.

[2005-02-17] Version 1.1.1:

* Fixed: BER decoding of zero Counter64 value and optimized
  encoding of Counter64 values.
* Added: -tCVS and -ttCVS operation modes to support
  CVS dumps of tabular SNMP data with the console
  example (SnmpRequest.java).

[2005-02-04] Version 1.1a:

* Added: UsmUser checks for minimum passphrase length (8).
  See RFC3414 ?11.2.
* Fixed: TableUtils did not recognize SNMP exception VB
  status and errors (SNMPv1) indicating table boundary.

[2005-02-02] Version 1.1:

* Improved: ResponseEvent now includes the peer address
  of the response sending entity.
* Added: PDU.toArray() and PDU.addAll(VariableBinding[]).
* Added: OID.trim(int n) which removes the n rightmost
  subidentifiers of an OID.
* Changed: MessageDispatcherImpl.addTransportMapping
  does not replace a transport mapping for the same
  address class any more.
* Changed: Snmp.sendPDU methods are now deprecated, because
  they do not return the peer address. The new
  Snmp.send methods return a ResponseEvent object that
  provides this information.
* Added: PDU type send methods that set the PDU type when
  sending the PDU.
* Added: Snmp.addNotificationListener() and related methods
  to support simple (de)registration of inbound only transport
  mappings.
* Improved: Snmp's and DefaultTcpTransportMapping's threads
  now run as daemon threads and thus no longer prevents an
  application to exit. Nevertheless, it is strongly
  recommended to call Snmp.close() before exiting to close
  all ports nicely.
* Improved: Removed redundant class UsmUserNameTable.
* Added: Methods to extract and delete USM users (USM class).
* Improved: MPv3.Cache entries are now removed even if the
  target agent does not respond.
* Changed: Made OctetString.isPrintable() public.
* Added: TransportMapping.isListening().
* Added: TransportMappings class which allows generic mapping
  of address classes to transport mappings.
* Fixed: TableUtils did not handle sparse tables correctly.
* Fixed: MPv3.setLocalEngineID did not check parameter.
* Fixed: DefaultPDUFactory did not create SNMPv3 ScopedPDUs.
* Changed: Replaced -D option of console tool by -d to avoid
  name clashes with JVM option -D.

[2005-01-13] Version 1.0.4c:

* Fixed: UsmUserKey.compareTo and UsmUserEntry.compareTo
  methods did not compare classes engine ID correctly.

[2004-11-22] Version 1.0.4b:

* Fixed: In some situations an SNMPv3_USM_ERROR could
  have returned when trying to send a request/response
  PDU to a target for whose engine ID no engine time
  notion has been stored in the local cache.

[2004-11-18] Version 1.0.4a:

* Fixed: TableUtils.getTable did not cancel requests
  which caused a memory leak.
* Fixed: UnsupportedOperationException was thrown in
  TableUtils.getTable() when using it on a SNMPv1 target.
* Fixed: Unclosed file handle when reading
  smisyntax.properties.

* Fixed: Memory leak when sending asynchronous requests.
  When sending an async request do not forget to cancel
  the request using Snmp.cancel(PDU, ReponseListener)
  within the onResponse method of your listener!
* Fixed: Unclosed file handles when reading
  address.properties and SecurityProtocols.properties.
* Added: Synchronous TableUtils.getTable() method.
* Improved: TransportMapping inheritance regarding
  asynchronous message processing support.
* Added: DefaultPDUFactory implementation.
* Fixed: PDU.isConfirmedPdu().

[2004-11-04] Version 1.0.3c:

* Added: The DefaultUdpTransportMapping and
  DefaultTcpTransportMapping now by default support
  asynchronous (i.e. multi-threaded) message processing.
  For synchronous message processing the flag
  asyncMsgProcessingSupported should be set to false, to
  increase performance!

[2004-10-30] Version 1.0.3b:

* Fixed: TableUtils did use GETBULK PDU type also for
  SNMPv1 targets.
* Improved: By default, the MessageDispatcherImpl class
  now checks for inconsistencies between PDU type and
  used SNMP version.

[2004-10-13] Version 1.0.3a:

* Fixed: Race condition in Variable.registerSyntaxes().
  In a multithreaded usage, this could have caused some
  BER decoding failures.
* Improved: Minor JavaDoc improvements.

[2004-08-20] Version 1.0.3:

* Added: Variable.isException().
* Improved: DefaultUdpTransportMapping now closes socket
  in close() even if listen() has not been called before.
* Added: Variable.createVariableFromSyntax(int smiSyntax).
* Fixed: Uncaught exception thrown by the Snmp class
  because of an incomplete synchronization within the
  retry processing.
* Improved: Several JavaDoc improvements, for example added
  documentation for the different PDU types.

[2004-08-07] Version 1.0.2:

* Improved: Added constants for exception Null variables and
  Null constructor that takes an exception status syntax as
  parameter.
* Fixed: GenericAddress.parseAddress was not multi-threading
  safe.
* Added: Package org.snmp4j.util containing a ThreadPool
  implementation and a MultiThreadedMessageDispatcher.
* Added: TableUtils to retrieve a columns of one or more SNMP
  tables effeciently and row oriented using GETBULK requests.
* Added: OID(int[] rawOID, int offset, int length) constructor.

[2004-07-02] Version 1.0.1a:

* Fixed: Two regression issues that broke the TCP transport
  mapping.
* Fixed: TCP transport mapping left an unused timer thread
  running when closed.

[2004-06-26] Version 1.0.1:

* Fixed: SNMPv3 trap sending did not use local engine ID
  and time values (although it should have because the
  sending engine is the authoritative).
* Fixed: Context engine ID was not set to the local
  engine ID when empty and the sent PDU was a unconfirmed one.
* Added: DefaultCounterListener which implements SNMP error
  counters in a generic way. It is not used by SNMP4J by
  default.
* Fixed: Incorrect usage description in SnmpRequest.
* Fixed: clone() methods of Counter32 and Gauge32.
* Added: clone() method to VariableBinding.
* Added: Counter32.increment() and Counter64.increment() methods.

[2004-06-21] Version 1.0a:

* Fixed: Stack overflow when using PDUv1 for other PDU types
  than PDU.V1TRAP (which is *not* recommended anyway!).
* Improved: MessageDispatcherImpl.sendPdu throws now a
  MessageException when USM fails to prepare the outgoing
  message (instead of a NullPointerException).
* Fixed: Two race conditions when creating Snmp instances
  concurrently (two singleton factory methods needed to be
  synchronized).
* Improved: Console example returned "strange variable ..."
  when reaching end of a subtree-walk.

[2004-05-21] Version 1.0:

* Fixed: Several small cosmetic fixes in code, build, and
  JavaDoc.

[2004-05-08] Version 1.0 RC2:

* Fixed: SNMPv3 interoperability problems due to incorrect
  (too long) Mesage Authentication Code length.
* Fixed: Regression bug in the privacy module that has been
  introduced by the optimization in the last version.
* Fixed: The SNMP4J-Tool did not use supplied context and
  contextEngineID parameters.

[2004-04-20] Version 1.0 RC:

* Fixed: Bug in Counter64.getBERLength() - length was too
  short by one for very big counter values.
* Improved: Performance of BER encoding and decoding because
  less buffer copying is used now. There is still a small
  optimization potential for SNMPv3 message handling. This
  will be utilized in the final 1.0 release.
* Improved: Report handling.
* Improved: JavaDoc but package descriptions are still
  incomplete.
* Fixed: When Snmp.close() has been called all resources
  are freed now - also the internal message processing
  thread.

[2004-04-07] Version 1.0beta(2):

* Fixed: The dist/lib/SNMP4J.jar was not up-to-date
  and contained a bug, the sources did not contain.
  If you have downloaded the intial release you can
  simply rebuild it using "ant". There is then no need
  to download the beta(2) release.






© 2015 - 2025 Weber Informatics LLC | Privacy Policy