Lockclass allows safe sharing of information with multiple incoming requests. See "Sharing Objects Safely with Locking" on page 268.
requestobjects. In particular, you can now use
serverobjects to store references to other objects. See "The project Object" on page 250, "The server Object" on page 251, and "The request Object" on page 239.
Arrayobjects can be created using literal notation. See "Creating an Array" on page 145.
RegExpobject has properties most of which are set when a match is successful, such as
lastMatchwhich specifies the last successful match. The
Arrayobject has new properties that provide information about a successful match such as
inputwhich specifies the original input string against which the match was executed. See Chapter 6, "Regular Expressions" for information.
Numberfunction converts an object to a number. The
Stringfunction converts an object to a string. See "Number and String Functions" on page 135.
evalis no longer a method of individual objects; it is available only as a top-level function. See "eval Function" on page 133.
deleteoperator deletes an object, an object's property, or an element at a specified index in an array. See "delete" on page 94.
!=do not attempt to convert operands from one type to another, and always compare identity of like-typed operands. See "Comparison Operators" on page 87.
continuestatements can now be used with the new
labeledstatement. See "break Statement" on page 123 and "continue Statement" on page 124.
do...whilerepeats a loop until the test condition evaluates to false. See "do...while Statement" on page 121.
labelallows the program to break outside nested loops or to continue a loop outside the current loop. See "label Statement" on page 123.
switchallows the program to test several conditions easily. See "switch Statement" on page 119.
livewire.conffile is upgraded and renamed
jsa.conf. The new
jsa.conffile points to the new Application Manager and the new sample applications. It also contains entries for all other applications you had in the old
livewire.conffile. For details of the
jsa.conffile, see "Application Manager Details" on page 69.
LiveWire/docsdirectory, you must move (or copy) them to a new directory. In addition, you must manually recompile user-defined applications before you can use them with a 3.x web server, as described in "Backward Compatibility with Earlier Releases" on page 7. Be aware that an application can't be used with Enterprise Server 2.0 after recompiling. If you want to use an application with both servers, you should copy the application instead of moving it.
viewersample applications. In addition, the sample application
lwccallhas been updated and renamed
jsaccall. The sample application
videohas been updated and renamed
oldvideo; a new version of this application, using new LiveWire Database Service features, is named
videoapp. Finally, there are several new sample applications,
samplesdirectory and you want to transfer your changes to the new server, you must move (or copy) them and recompile them, as you do your own applications.
lwcomp. It is now called
jsacand has additional options. For information on using the compiler, see "Compiling an Application" on page 56. Once you recompile your applications, they will not work under LiveWire 1.x.
obj = new Object();
obj.prop = 42;
write(obj == 42); //Illegal! Cannot refer to obj.prop as obj
NULL. In this release, it returns
undefined. Consider this code:
<server>In earlier releases, that code would produce this output:
write("The value of myVar is: " + myVar);
The value of myVar is: NULLNow it produces this output:
The value of myVar is: undefined
requestobjects for an application's initial page. The properties of this
clientobject were not available on other pages. In this release, the runtime engine creates neither a
clientobject nor a
requestobject for an application's initial page. You can use the following statements to create these objects:
client = new Object();Note, however, that if you create these objects, their properties are still not available on any other pages of the application.
request = new Object();
jsac, to compile your applications.
lockmethod for the
serverobjects has changed. In earlier releases, if you called
server.lock, no other thread (for either the same or a different application) could make any changes to the
serverobject until you called
server.unlock. That is, the locking did not require any cooperation.
server.lock, and if another thread then calls the same method, that method will wait until the first thread calls
server.unlockor until a specified timeout period has elapsed. If, however, the second thread does not call
server.lock, it can make changes to those objects. For more information on locking, see "Sharing Objects Safely with Locking" on page 268.
DbPoolobjects and close all cursors opened either with
Connectionobjects. For information on managing connections, see Chapter 15, "Connecting to a Database." For information on cursors, see "Manipulating Query Results with Cursors" on page 326.
beginTransaction. In this release, you must always use explicit transaction control (with the
rollbackTransactionmethods) when using an updatable cursor and making changes to the database. For information on cursors, see "Manipulating Query Results with Cursors" on page 326. For information on transactions, see "Managing Transactions" on page 335.
databaseobject, the transaction is rolled back. If the transaction is through a
DbPoolobject, the value of the
commitFlagparameter when the connection was established determines whether the transaction is committed or rolled back. For information on establishing connections, see Chapter 15, "Connecting to a Database."
Last Updated: 11/12/98 15:29:05