Was ist neu in SchrÖdinger 1.0.1?
Fokus der Version 1.0.1 des JSP-Entwicklungstools Schrödinger lag auf der Integration in die jeweiligen Betriebssysteme, Fehlerbeseitigung und der Unterstützung von Rendezvous. Diese von Apple im Sommer 2002 vorgestellte Technik implementiert den IETF-Standard "ZeroConf" und ermöglicht den Aufbau von sogenannten "Ad-hoc"-Netzen ohne jegliche Konfiguration. Schrödinger nutzt Rendezvous, um eine JAVA-Webapplikation als HTTP Dienst im LAN bekannt zu machen. Schrödinger ermöglicht diesen Dienst auch für nicht Apple Betriebssysteme, es wird lediglich ein einziger Rendezvous fähiger Apple, Linux oder UNIX Rechner im Netz benötigt, um für alle Schrödinger dieses Feature nutzbar zu machen.
Schrödinger Version 1.0.1 wurde am 2003-05-12 veröffentlicht. Gegenüber der vorhergehenden Version 1.0 änderte sich Folgendes:
Rendezvous (ZeroConf) Unterstützung
Die im Schrödinger integrierte Unterstützung der Rendezvous bzw. ZeroConf Technologie ermöglicht die Nutzung von JSP-Webapplikationen in Ad-hoc-Netzen. Schrödinger registriert die Applikation als Rendezvous (oder ZeroConf) Dienst im LAN, der mit einem geeigneten Browser (z. B. Safari) automatisch gefunden werden kann. Die Teammitglieder brauchen sich nicht um lästige Dinge wie IP-Adresse, Netzwerknamen oder Ports zu kümmern. Selbst unter nicht Rendezvous fähigen Systemen ist Schrödingers Rendezvous verfügbar, es braucht lediglich einen Apple (mit MacOS > 10.2) oder einen Zeroconf fähigen Linux bzw. UNIX Recher im LAN, und schon kann sich jeder Schrödinger dieses LAN-Segments bei Rendezvous registrieren.
Verbesserung der Benutzerschnittstelle unter Mac-OS
Das Benutzerinterface von Schrödinger erfüllt in der neuen Version die HI-Guidelines von Apple für Applikationen viel besser. Läuft Schrödinger auf einem Rechner mit MacOS 10.2 und einem installierten JDK 1.4.1, so wird statt dem Swing Filechooser nun der Dateiauswahldialog von MacOS genutzt. Dieser Dialog ermöglicht den Zugriff auf die Favoriten des Nutzers und ist wesentlich ergonomischer zu benutzen als sein Swing Gegenstück.
Schrödinger registriert sich nun für die Dateiendung WAR als Applikation. So kann eine WAR-Datei auf das Dockicon gezogen werden. Schrödinger veröffentlicht dann diese Webapplikation.
Neues Readme
Das Readme aus Version 1.0 war fürchterlich... das Micromata Team entschuldigt sich hiermit in aller Form bei der Nutzergemeinschaft. Mit dem neuen readme sind wir ein wesentliches Stück in Richtung Handbuch vorangekommen. Kapitel über "Erste Schritte", "Servlet Integration" und ein Benutzerleitfaden vereinfachen den Einstieg in Schrödinger.
Verbesserung des HTTP-Inspektors
Der HTTP-Inspektor misst die Zeit, die Schrödinger für das beantworten eines HTTP-Requests benötigt. So können die Aufrufe ermittelt werden, die die Webapplikation langsam machen.
KDE-support
Unter Linux integriert sich Schrödinger in die KDE Umgebung.
Examples
Der Schrödinger Distribution wurden einige JSP-Beispiele beigelegt, die den Einstieg in Schrödinger und die Welt der JSP-Programmierung begleiten.
Tomcat 4.1.24
Schrödinger arbeitet nun intern mit der JSP/Servlet Engine 4.1.24 des Jakatra Projekts Tomcat. Das Tomcat Team von Jakarta meldet folgende Neuerungen und/oder Bugfixes für die Engine:
- JDIRealm:
Added support for using an alternateURL if a socket connection can not be made to the provider at the connectionURL. - CoyoteConnector:
Add HTTP/1.1 GZIP compression support. - StandardWrapper, ManagerBase:
Added JavaBean fields to expose statistics through JMX. - GlobalResourcesLifecycleListener:
Allow the listener to be associated with a Service. - Compiler:
Added new "fork" option. This tells Ant to fork the JSP page javac compile so that it is run in a different JVM from the one Tomcat is running in. Please refer to the Jasper-HOWTO for more information. - Xerces:
Upgrade to Xerces 2.3.0. - CoyoteWriter, CoyoteResponse:
SECURITY: Fix writer reuse after an IOException occurred. - ApplicationFilterConfig:
Wrap filter initialization with swallow output. - StandardServer:
Don't write out listeners for StandardDefaultContext. - StandardServer:
Filter special characters in DataSource URL. - DefaultServlet:
Invalid date headers should be ignored. - ManagerBase:
Add code to guarantee uniqueness of a session ID (even though the probability that this event occurs is negligible, some people feel more comfortable with that code enabled). - RequestFilterValve:
Catch null pointer property to match on, deny by default if found. - ProxyDirContext:
Fix cache invalidation problem when creating subcontexts or modifying attributes. - DataSourceRealm:
Removed code which validates the realm can connect to the db from the realm start in case the JNDI named DataSource has not been initialized yet. - StandardServer:
Fix a problem where some valves would be incorrectly written to server.xml. - StandardSession:
Don't recycle sessions, as the performance gain is minimal. - CookieTools:
Add spaces after ; in cookies. This avoids problems with IE on Mac. - Manager:
Add missing security mapping for deploy (this bug was introduced in 4.1.19). - ManagerBase, StandardSession:
Correct problems related to the persistence of sessions. - ApplicationContext:
Add a workaround to allow retrieving contexts from the root context. - ErrorDispatcherValve
Aborted requests by remote clients are now detected so that a one line entry is logged instead of a complete stack trace and the request is terminated instead of trying to invoke an error page. - MbeanUtils:
Add JSR 77 servlet registration. - JDBCStore:
Optimize keys() method SQL WHERE clause. Implement a new db field so that the session can be localized to the Engine, Host, and Context (Web Application). - JDBCStore
Synchronize methods which use db so that use of db connection is thread safe. - Session Manager StoreBase
Fix a NPE bug when the background thread expires sessions. - WebappClassLoader
Grant web applications a FilePermission to read the web application context directory in addition to its contents. - JDBCStore
Fix bug where first session in result set was skipped. - JK 2 CoyoteHandler:
Fix NPE occurring in SSL mode. - ActionCode:
Fix incorrect number which could cause bad matching. - HTTP/1.1 Http11Processor:
Fix case sensitivity matching of some special header values, which could prevent HTTP/1.0 keep alive with some clients. - PoolTcpEndpoint:
Fix incorrect handling when an exception occurs during a SSL handshake. - PoolTcpEndpoint:
More robust socket restart code for the case where an exception occurs during an accept. - ThreadPool:
Remove thread from active thread list when it ends. - CoyoteConnector:
Allow setting socket linger. - Cookies:
Fix to return values instead of the names. - CoyoteAdapter:
Reject decoded URIs which don't start with '/'. - Cookies:
Add handling for bad cookies. - CoyoteResponse:
Fix value of the committed flag after the response is finished. - Background Thread Recompile:
Fixed a thread synchronization bug which could cause the thread which does background JSP recompiles (development=false) to die. - TldLocationCache:
TLDs under WEB-INF are not scanned for URI mappings. - JspWriterImpl:
Remove custom flushing, which caused client disconnects to log stack traces with Jasper. - PageContextImpl:
pushBody()/popBody() error on tomcat 4.1.X. - Fixed JSP page compiles so that objects created for performing the JSP page compiles which are not reused are dereferenced so they are eligible for GC. This should reduce the memory footprint and improve GC performance.
- JspC:
Port fixes to JspC from HEAD, including support for packaged JSPs, and fixes to webapp precompilation. - Compiler:
Dereference objects used during compilation, in order to allow garbage collection. - Compiler:
Fixed a NPE caused by nulling errorDispatcher. - Generator:
JspWriter not restored properly when exception thrown in a tag's body content. - Generator:
Fix isThreadSafe functionality. - JspServletWrapper:
Fix race condition in the reloading check by using an object local boolean. - JspServletWrapper:
Fix recompilation logic. - Compiler:
An ant Project uses the current directory as its base directory by default. The base directory doesn't matter but ant always checks it. This can cause problems when using the SecurityManager with a strict policy. The Compiler now explicitely sets the ant Project base dir to catalina.home. - Generator:
Added support for <jsp:fallback> to XML syntax. - Generator:
Invalid code generated when nesting tags. - TagLibraryInfoImpl:
Fix precompilation when JARs contain TLDs. - JspC:
Add package name mangling for Java keywords. - JspC:
Add documentation. - JspRuntimeContext
Grant web applications JSP pages a FilePermission to read the web application context directory in addition to its contents. - Compiler:
Avoid NPE when using JSPC using the built-in compiler. - JspC:
Set the thread context class loader to the specified classpath.
Bug Fixes
...viele, viele kleine und große Bugs wurden gefunden und entfernt.
Was war neu in SchrÖdinger V1.0
Schrödinger V1.0 wurde am 2003/03/30 veröffentlicht. Da es sich um die erste Version von Schrödinger handelte, waren alle Features neu - Schrödinger V1.0 nutzte intern Tomcat 4.1.18.







