... very
close to the one obtained after including the unknown
obstacle in the data base and starting again the plan-
ning [15]. In fact the main penalization due to un-
known obstacles is the decreasing ... Department of the Institute
of Technology since 1999. His research
interests within the Complex Systems
Laboratory of CEMIF concern methods
of processing inaccurate and uncertain
data with application ... the
experimental data without having recourse to any empirical approach.
In the case of a partially known environment, a hybrid method is used in order to exploit the advantages of global and local
navigation...
... applications.The latter use of
XML is much discussed and heralded in particular as a great benefit in connecting
legacy applications to modern Web-based applications.
Within a Web application, passing ... principle’s successful application can be seen in the use of
XSLT to transform XML into HTML. In most cases, XSLT is used ina Web applica-
tion to create a data-driven application process.
In ... in data-display tasks, except in two tasks (displaying
chat subject categories to a user starting a chat, and displaying the messages ina chat).
TransformTag
was so useful that we were able to...
... store!).
When a visitor chooses a chat to join, the selection includes both a chat subject
and a chat topic.The chat subject gives the complete path to the correct chat subject
element in the XML database. ... to touch
the existing scaffolding. Much can be done to change the appearance of the user
interface, while still incorporating the fundamental message communication function-
ality that allows ... Selecting Chat Subjects
As you have read, our implementation began as a system involving many JSP docu-
ments, which used custom tags to access an XML data-interface object and an XSLT
processor. At...
... Chat Subject and Topic
■
Performing thread synchronization
■
Synchronizing the XML database
■
Finding the chat and actor status in Chat
■
Rejoining existing chats
■
Starting a chat
■
Adding a ... false;
boolean actorIsGuestInChat = false;
boolean chatExistsForSubjectAndTopic = false;
boolean actorRestartingCurrentChat = false;
Getting Chat Subject and Topic
The chat subject and topic, chosen by a ... request,
which can be associated with a particular destination and
bonForumCommand
processing.
That will help create more complex combinations of the bonForum chat logic, by
making one more variable available...
... sufficient
that the data storage be capable of containing a tree of elements ina hierarchy. Each
element optionally contains a list of
name=value
attribute pairs and can have content
corresponding to ... source:
if(haveSubject && haveTopic) {
String fakeChatItem = chatSubject + “_[“;
fakeChatItem = fakeChatItem + chatTopic + “]”;
// ‘_’ is separator ina chatItem
// ‘.’ is separator in pathNameHashtable ... provide access
to the bonForum Web applicationin the manner of a system console, allowing the
owner of the application to carry out necessary maintenance and tuning tasks.
Notice that the
addChildNodeToNonRootNode()
method...
... place it as a
JAR file in the TOMCAT_HOME\lib folder. A JSP container, such as Tomcat, can
also use tag libraries by finding the appropriate implementing classes in its default or
other class ...
TagAttributeInfo
,
TagData
,
TagExtraInfo
,
TagInfo
,
TagLibraryInfo
, and
VariableInfo
.
The doStartTag( ) Method
Implementing the
Tag
interface implies defining a
doStartTag()
method. A tag ... is a mechanism of choice in the nested-tag arsenal of the JSP
taglib API:
ConnectionTag connectionTag = (ConnectionTag) TagSupport.findAncestorWithClass(
➥
this, org.apache.taglibs.sql.ConnectionTag.class...
... Note that if you have
Xalan-Java-2
,
you can also set
xalanVersion
to
Xalan Java 1
, as long as the compatibility JAR file
is accessible, for example, as TOMCAT_HOME\lib\xalanj1compat.jar.
Let’s ...
Xalan1Transformer
class,
which encapsulates the steps necessary to carry out an XSLT process using the Xalan-
Java 1 processor from the Apache XML project.
package de.tarent.forum;
import java.text.*;
import ... XSLT could
wait until later to display a list of available chats.
In the original XML-based design, connections between data items were maintained
by matching key values in related elements.The connection...
... their source code, as well as Chapter 8.
The addNode() Method’s nodeKeyHashtable Cache
In the
ForestHashtable
class, the public classes that add data nodes all call a private
class called
addNode()
.The ...
bonForum
contains
actors
,
actions
, and
things
nodes. At initialization, one child of
actors
, called
system
, is added. A bonForum’s
XML database also contains initially a list of links to ... search
through a much smaller data set that is guaranteed to contain all the new child nodes
that we must find instead of making many new requests from a database.
Climbing Up the Hierarchy
In...
... the
database.
Using a DataGrid Control to Access a Database
A DataGrid allows you to access rows ina database table. In the following sections,
you'll learn how to create an ASP.NET ... information about a user or the application. Finally,
you can of course always store information in static variables or objects.
You'll learn about the Session, Application, and Cache objects ... your form. (Adding a SqlConnection object to a form was discussed in Chapter
6, "Introducing Windows Applications and ADO.NET," and in Chapter 7,
"Connecting to a Database.")...
... prepared before they can participate in an
automatic transaction. Once an object is marked to participate ina transaction, it will
automatically execute within a transaction. The object's ... be
configured programmatically to participate automatically in an existing transaction, to
start a new transaction, or to not participate ina transaction. The following steps prepare
a class ... automatic transaction, the objects participating in it can vote to
either commit the transaction they are participating in by calling the static SetComplete( )
method of the ContextUtil class or...
... 1. always warn user and ask again for new subject
and/or new topic
// 2 if actor was in it, always join with previous
status, else warn and ask again
// 3. if actor was in it, always join as ... warn
and ask again
// All these choices can be modified re
actorRestartingCurrentChat value
// For now, we implement choice #2
if(actorIsHostInChat) {
bonForumCommand = “host_executes_chat”;
actorWillRejoinChat ... taken:
session.setAttribute(
“actorNicknameNotAvailable”,
actorNickname);
// nickname choice is not unique,
disallow it:
actorNickname = “”;
log(sessionId, “err”,
“actorNickname rejected as
duplicate:” +
actorNickname);
}
else...