Well, it almost works  :)
Just on thing: As far as i remember, PDFs are able not only to link at a given page, but within an anchor in a page. I have attached another document (sorry, its a bit larger this time, but without enough text you can not reproduce the bug), that shows what i mean. Clicking in the summary on one of the subchapter will lead you to the beginning of the page, that contains the the subchapter, not to the subchapter itself on the page.

Thanks for your quick reply

Sven

I've done a change that should fix the bug for you. Would you please
update your working copy and retry? Please let me know if it works.
Thanks for preparing the example FO file in the first place! That helped
a lot.

This is the fix:
http://svn.apache.org/viewcvs?rev=326133&view=rev

On 18.10.2005 13:00:25 Jeremias Maerki wrote:
Looks like you hit a bug in FOP Trunk. I'll need to investigate this a
bit more closely. I will get back to you.

For the fop-devs: The internal-destination is properly set on the area
tree but the PDFRenderer doesn't find the right pageReference in
renderInlineParent() and thus skips generating the PDFLink object. Maybe
there's a general problem with forward references there.

On 18.10.2005 12:33:34 Sven wrote:
 Hi there,
i read about FOP's problem, not being able to display leaders & co as links. In my case i have just simple text that is used as an internal hyperlink. FOP renders the page successfully without any warning about missing referenced IDs, so i have to assume everything works fine. But indeed none of the links is "clickable". I am using the latest trunk from repository (revision 325900). Am i missing something important? Thanks for help :)


<snip/>


Jeremias Maerki

<?xml version="1.0" encoding="utf-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format";>
<fo:layout-master-set>
<fo:simple-page-master margin="4.5cm" page-width="21cm" page-height="29.7cm" master-name="titlepage">
<fo:region-body/>
</fo:simple-page-master>
<fo:simple-page-master margin="2.5cm" page-width="21cm" page-height="29.7cm" master-name="default">
<fo:region-body margin-bottom="1cm" margin-top="1cm"/>
<fo:region-before extent="1cm"/>
<fo:region-after extent="1cm"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="titlepage">
<fo:flow flow-name="xsl-region-body">
<fo:block text-align="center" font-weight="bold" font-size="16pt" font-family="Helvetica">Integration von Agentenplattformen in J2EE-Anwendungsserverumgebungen – am Beispiel von Jadex</fo:block>
<fo:block space-before="1em" text-align="center" font-size="12pt" font-family="Times">
						(Arbeitsbeschreibung zur Diplomarbeit)
					</fo:block>
<fo:block space-after="12pt" space-before="4em" font-weight="bold" font-size="14pt" font-family="Helvetica">
						Inhaltsverzeichnis
					</fo:block>
<fo:list-block line-height="1.5em" font-size="12pt" font-family="Times">
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>1.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Einleitung">Einleitung</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Einleitung"/>
</fo:block>
<fo:list-block>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>1.1.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Zielsetzung">Zielsetzung</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Zielsetzung"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>1.2.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Vorgehen">Vorgehen</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Vorgehen"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>2.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Grundlagen">Grundlagen</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Grundlagen"/>
</fo:block>
<fo:list-block>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>2.1.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Agententechnologie">Agententechnologie</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Agententechnologie"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>2.2.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Anwendungsserver">Anwendungsserver</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Anwendungsserver"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>3.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Analyse der Integrationsmöglichkeiten">Analyse der Integrationsmöglichkeiten</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Analyse der Integrationsmöglichkeiten"/>
</fo:block>
<fo:list-block>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>3.1.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Systemnahe Integration">Systemnahe Integration</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Systemnahe Integration"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>3.2.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Komponentenbasierte Integration">Komponentenbasierte Integration</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Komponentenbasierte Integration"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>4.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Einschätzung und Auswahl einer Integrationsart">Einschätzung und Auswahl einer Integrationsart</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Einschätzung und Auswahl einer Integrationsart"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>5.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Evaluation anhand einer Beispielanwendung">Evaluation anhand einer Beispielanwendung</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Evaluation anhand einer Beispielanwendung"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>6.</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:basic-link internal-destination="Zusammenfassung und Ausblick">Zusammenfassung und Ausblick</fo:basic-link>
<fo:leader leader-length.optimum="100%" leader-pattern="dots"/>
<fo:page-number-citation ref-id="Zusammenfassung und Ausblick"/>
</fo:block>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
</fo:flow>
</fo:page-sequence>
	<fo:page-sequence master-reference="default">
<fo:static-content flow-name="xsl-region-before">
<fo:block border-bottom="solid 1px silver" text-align="end" font-size="10pt" font-family="Helvetica">Einleitung</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<fo:block font-size="12pt" font-family="Helvetica">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block space-after="0.5em" space-before="1em" id="Einleitung" font-weight="bold" font-size="16pt" font-family="Helvetica">1. Einleitung</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
		Obwohl die agentenorientierte Softwareentwicklung im vergangenen
		Jahrzehnt immer größeren Zuspruch gefunden hat, findet sie
		bisher nur überwiegend im universitären Umfeld Anwendung. Damit
		sie Bestandteil der Entwicklung von Unternehmensanwendungen
		werden kann, müssten die Defizite bestehender Agentenplattformen
		beseitigt werden. Diese Defizite bestehen in der schlechten
		Administrierbarkeit und der häufig nur unzureichend
		unterstützten Interoperabilität mit bestehenden
		Unternehmensanwendungen [CoGrBKR02].
		<fo:block space-after="0.5em" space-before="1em" id="Zielsetzung" font-weight="bold" font-size="14pt" font-family="Helvetica">1.1. Zielsetzung</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Ziel dieser Diplomarbeit ist es, die im Fachbereich
				Informatik der Universität Hamburg entwickelte
				Agentenplattform Jadex um eben genannte
				nicht-funktionale Aspekte wie zum Beispiel die
				Verwaltung und Überwachung von Softwareagenten zu
				erweitern. Weiterhin soll der wechselseitige Zugriff von
				Softwareagenten und Unternehmenssoftware für den
				Programmierer so einfach wie möglich gestaltet werden.
				Eine ideale Lösung würde demnach so aussehen, dass weder
				ein Agenten- noch ein Unternehmenssoftwareprogrammierer
				eine neue Schnittstelle zu lernen hätten. Stattdessen
				würden beide die ihnen bekannten Schnittstellen nutzen,
				um gegenseitig zu interagieren.
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Um dieses Ziel zu erreichen, wird eine Bestandsaufnahme
				existierender Softwareframeworks gemacht, welche die
				genannten Anforderungen erfüllen. Das Hauptaugenmerk
				liegt hierbei sowohl auf der Analyse bestehender
				Lösungen für Agententechnologie im Unternehmensumfeld im
				Allgemeinen, als auch auf einer Untersuchung der
				Integrationsmöglichkeiten von Jadex in bestehende
				Unternehmenssoftware im Speziellen.
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Ausgehend von dieser Analyse wird eine der
				Integrationsmöglichkeiten für Jadex realisiert und
				anhand eines Beispielszenarios demonstriert und
				validiert.
			</fo:block>
		</fo:block>
		<fo:block space-after="0.5em" space-before="1em" id="Vorgehen" font-weight="bold" font-size="14pt" font-family="Helvetica">1.2. Vorgehen</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Da die genannten Anforderungen an Software sowohl für
				die effiziente Entwicklung als auch für den effektiven
				Betrieb wichtig sind, werden sie von Unternehmen als
				zwingend notwendig angesehen. Dementsprechend zahlreich
				ist die Anzahl der Frameworks auf dem Markt, die dem
				Entwickler die Programmierung dieser immer
				wiederkehrenden Anforderungen abzunehmen verspricht.
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Eine davon ist die im Java Community Process (JCP)
				entstandene Spezifikation namens Java 2 Platform,
				Enterprise Edition (J2EE) für die Entwicklung
				komponentenbasierter, mehrschichtiger
				Unternehmensanwendungen in Java. Diese Spezifikation
				wird von mehreren kommerziellen und nicht-kommerziellen
				Anwendungsservern umgesetzt. Da sich die
				Anwendungsserver für Unternehmenssoftware über die Jahre
				bewährt haben, ist es durchaus nahe liegend, die von
				ihnen erbrachten Dienste zu nutzen, um die oben
				genannten Defizite bestehender Agentenplattformen zu
				beseitigen.
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				In dem folgenden Kapitel werden dafür zunächst die
				zugrunde liegenden Technologien erklärt. Dabei wird
				speziell auf die technischen Gesichtspunkte von Jadex
				und J2EE-konformen Anwendungsservern eingegangen, da
				diese den begrenzen Faktor für eine Integration
				darstellen. Von dieser kurzen Einführung ausgehend,
				werden im folgenden Kapitel verschiedene
				Integrationsmöglichkeiten aufgezeigt und auf ihre Vor-
				und Nachteile hin untersucht. Aufgrund der Analyse wird
				anschließend eine dieser aufgezeigten Möglichkeiten
				ausgewählt und implementiert. Dazu gehört auch ein
				einfaches Beispielszenario, das die Funktionalität der
				Integration verdeutlicht. Abschließend werden in einem
				Resümee die erzielten Ergebnisse mit den Anforderungen
				verglichen, die aufgetauchten Probleme erklärt sowie die
				im Zuge der Diplomarbeit aufgetauchten, weiterführenden
				Ideen kurz umrissen.
			</fo:block>
		</fo:block>
	</fo:block>
</fo:flow>
</fo:page-sequence>
	<fo:page-sequence master-reference="default">
<fo:static-content flow-name="xsl-region-before">
<fo:block border-bottom="solid 1px silver" text-align="end" font-size="10pt" font-family="Helvetica">Grundlagen</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<fo:block font-size="12pt" font-family="Helvetica">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block space-after="0.5em" space-before="1em" id="Grundlagen" font-weight="bold" font-size="16pt" font-family="Helvetica">2. Grundlagen</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
		An dieser Stelle soll nun eine Einführung in die in dieser
		Diplomarbeit verwendeten Technologien gegeben werden. Wie schon
		im vorangegangenen Kapitel gesagt, werden dabei insbesondere die
		technischen Aspekte beider Technologien erläutert.
		<fo:block space-after="0.5em" space-before="1em" id="Agententechnologie" font-weight="bold" font-size="14pt" font-family="Helvetica">2.1. Agententechnologie</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Beginnend mit einer kurzen allgemeinen Einführung in
				Softwareagenten und Agentenplattformen sowie ihren
				Einsatz, geht dieses Kapitel speziell auf Jadex ein.
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Softwareagenten sind Programmfragmente, die im Kontext
				einer Agentenplattform laufen und sich durch folgende
				Eigenschaften auszeichnen:
			</fo:block>
			<fo:list-block>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>1.)</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
					Soziabilität, d.h. Agenten kommunizieren mit anderen
					Agenten, um ihre vom Programmierer festgelegten
					Ziele zu erreichen.
				</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>2.)</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
					Proaktivität, d.h. Agenten reagieren nicht nur auf
					Änderungen ihrer Umwelt, sondern handeln auch aus
					eigener Initiative.
				</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>3.)</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
					Autonomie, d.h. Agenten handeln weitestgehend
					unabhängig von Benutzereingriffen.
				</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block>4.)</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
					Anpassungsfähigkeit, d.h. Agenten sollten die
					Prinzipien der aus der Psychologie bekannten
					„Handlungsregulationstheorie“ ansatzweise umsetzen.
				</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Jadex ist eine Implementierung des BDI-Modells, welches
				wohl als bekanntester Vertreter der deliberativen
				Agentenarchitekturen gilt. Dieses Modell wurde
				ursprünglich 1987 von Michael Bratman entwickelt, der
				sich in seiner Funktion als Professor der Philosophie an
				der Stanford Universität mit der Entscheidungsfindung
				bei Menschen beschäftigt hat [WikiBDI05]. Grundlage des
				Modells sind drei Kernkomponenten die jedem BDI-Agenten
				zugrunde liegen: sein Wissen (
				<fo:inline text-decoration="underline">B</fo:inline>
				eliefs), seine Ziele (
				<fo:inline text-decoration="underline">D</fo:inline>
				esires) und seine Absichten (
				<fo:inline text-decoration="underline">I</fo:inline>
				ntentions) [PoBrLa05].
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Jadex war ursprünglich als Erweiterung der
				Agentenplattform Jade entwickelt worden – daher auch der
				Name Jadex (Jade Extension). Der aktuelle
				Entwicklungszweig von Jadex ermöglicht es aber unter
				anderem dank geeigneter Schnittstellen, quasi beliebige
				Transportsysteme für Nachrichten anzubinden.
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Es folgt eine technische Beschreibung von Jadex. Die
				Anforderungen an die Laufzeitumgebung werden ebenso wie
				die Schnittstellen, die eine Integration von Jadex
				ermöglichen, benannt und erklärt.
			</fo:block>
		</fo:block>
		<fo:block space-after="0.5em" space-before="1em" id="Anwendungsserver" font-weight="bold" font-size="14pt" font-family="Helvetica">2.2. Anwendungsserver</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Die im JCP entwickelte Spezifikation J2EE definiert
				einen allgemein akzeptierten Rahmen für die Entwicklung
				modularer, mehrschichtiger Anwendungen. An dem Prozess
				wirken mehrere namhafte Firmen wie etwa IBM, Sun und
				Oracle mit dem Ziel mit, Anwendungsserver und
				Anwendungskomponenten unterschiedlicher Hersteller
				interoperabel zu halten. Um dieses zu erreichen, werden
				in der Spezifikation nicht-funktionale Aspekte
				festgelegt, die die folgenden Bereiche betreffen:
			</fo:block>
			<fo:list-block>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block font-size="10pt" font-family="Symbol">
							•
						</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">Transaktionskontrolle</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block font-size="10pt" font-family="Symbol">
							•
						</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
					Kommunikation zwischen Komponenten und mit externen
					- möglicherweise schon bestehenden - Systemen
				</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block font-size="10pt" font-family="Symbol">
							•
						</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">Unterstützung für Persistenz von Geschäftsdaten</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block font-size="10pt" font-family="Symbol">
							•
						</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">Sicherheit</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block font-size="10pt" font-family="Symbol">
							•
						</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">Namens- und Verzeichnisdienste</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
<fo:list-item>
<fo:list-item-label end-indent="label-end()">
<fo:block font-size="10pt" font-family="Symbol">
							•
						</fo:block>
</fo:list-item-label>
<fo:list-item-body start-indent="body-start()">
<fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
					Unterstützung für die Entwicklung und die
					Administration von Komponenten
				</fo:block>
</fo:block>
</fo:list-item-body>
</fo:list-item>
</fo:list-block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Im Folgenden wird näher auf die einzelnen Aspekte
				eingegangen: Dabei wird erläutert wie sie umgesetzt
				wurden und wie sie vom Entwickler genutzt werden können.
			</fo:block>
		</fo:block>
	</fo:block>
</fo:flow>
</fo:page-sequence>
	<fo:page-sequence master-reference="default">
<fo:static-content flow-name="xsl-region-before">
<fo:block border-bottom="solid 1px silver" text-align="end" font-size="10pt" font-family="Helvetica">Analyse der Integrationsmöglichkeiten</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<fo:block font-size="12pt" font-family="Helvetica">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block space-after="0.5em" space-before="1em" id="Analyse der Integrationsmöglichkeiten" font-weight="bold" font-size="16pt" font-family="Helvetica">3. Analyse der Integrationsmöglichkeiten</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
		<fo:block text-align="justify" font-size="12pt" font-family="Times">
			Nachdem die Vorraussetzungen und Möglichkeiten beider
			Technologien genannt wurden, beschäftigt sich dieses Kapitel
			nun mit den Integrationsmöglichkeiten der beiden. Dazu
			werden die sich teilweise widersprechenden Anforderungen
			beider Technologien – z.B. Proaktivität auf der einen,
			kontrollierter, reaktiver Ablauf auf der anderen Seite –
			gegenübergestellt und auf ihre Verträglichkeit hin
			untersucht.
		</fo:block>
		<fo:block space-after="0.25em" space-before="0.5em" font-weight="bold" font-size="12pt" font-family="Helvetica">Dicker Test an dieser Stelle</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
			Die Anpassungsfähigkeit von Softwareagenten wird z.B. durch
			eine Integration kaum beeinflusst, ist sie doch als
			Bestandteil von Jadex vollständig im BDI-Modell gekapselt.
			Als problematisch könnten sich da nur Zustandsinformationen
			des Agenten erweisen, da nicht alle Integrationsarten
			beliebige Objekte als Instanzvariablen zulassen.
		</fo:block>
		<fo:block text-align="justify" font-size="12pt" font-family="Times">
			Schwieriger sind dagegen die Soziabilität und das eben schon
			genannte proaktive Verhalten von Agenten zu integrieren.
			Gemäß der Zielsetzung dieser Arbeit erfordert die
			Soziabilität nicht nur eine Kommunikation der Agenten
			untereinander, sondern auch eine Kommunikation mit
			bestehender Unternehmenssoftware. Die Komplexität der
			Integration des proaktiven Verhaltens ist abhängig von der
			gewählten Integrationsart. Sehr allgemein formuliert lässt
			sich sagen: Je mehr sich diese Integration an die
			J2EE-Spezifikation hält, desto mehr Dienste kann sie vom
			Anwendungsserver in Anspruch nehmen, aber desto komplexer
			ist auch die Integration.
		</fo:block>
		<fo:block space-after="0.5em" space-before="1em" id="Systemnahe Integration" font-weight="bold" font-size="14pt" font-family="Helvetica">3.1. Systemnahe Integration</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Über die durch die Spezifikation vorgegebenen
				Schnittstellen für Anwendungskomponenten hinaus bieten
				die meisten Anwendungsserver eigene –
				herstellerspezifische – Schnittstellen an.
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				BlueJADE ist zum Beispiel ein Ansatz, der eine
				Integration von Jade in den frei verfügbaren
				Anwendungsserver von JBoss vorsieht. Dabei macht sich
				BlueJADE den modularen Aufbau vom JBoss Anwendungsserver
				zu nutzen. Dieser besteht nur aus einem Mikrokernel, der
				alle weiteren Komponenten wie etwa die Container für
				J2EE-Komponenten lädt und verwaltet. BlueJADE stellt
				also den Adapter zwischen Jade und dem Mikrokernel vom
				Jboss Anwendungsserver dar [CoGrBu02].
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Aber auch andere Anwendungsserver wie die
				Referenzimplementierung der J2EE-Spezifikation von Sun
				bieten solche Schnittstellen.
			</fo:block>
		</fo:block>
		<fo:block space-after="0.5em" space-before="1em" id="Komponentenbasierte Integration" font-weight="bold" font-size="14pt" font-family="Helvetica">3.2. Komponentenbasierte Integration</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Von einer komponentenbasierten Integration kann man
				dagegen sprechen, wenn sie die J2EE-Spezifikation
				einhält und damit herstellerunabhängig ist. Die so
				integrierte Agentenplattform würde wie eine
				Anwendungskomponente im Anwendungsserver laufen und
				würde damit all ihre Vorteile und Funktionalitäten
				unterstützen.
			</fo:block>
			<fo:block text-align="justify" font-size="12pt" font-family="Times">
				Deswegen wird an dieser Stelle analysiert, inwieweit
				sich Jadex als Komponente für die einzelnen Teile des
				Anwendungsserver eignet [BaGa02].
			</fo:block>
		</fo:block>
	</fo:block>
</fo:flow>
</fo:page-sequence>
	<fo:page-sequence master-reference="default">
<fo:static-content flow-name="xsl-region-before">
<fo:block border-bottom="solid 1px silver" text-align="end" font-size="10pt" font-family="Helvetica">Einschätzung und Auswahl einer Integrationsart</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<fo:block font-size="12pt" font-family="Helvetica">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block space-after="0.5em" space-before="1em" id="Einschätzung und Auswahl einer Integrationsart" font-weight="bold" font-size="16pt" font-family="Helvetica">4. Einschätzung und Auswahl einer Integrationsart</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
		An das vorangehende Kapitel anschließend werden nun die
		genannten Integrationsmöglichkeiten mit dem Ziel bewertet, eine
		der Möglichkeiten für eine Implementierung auszuwählen.
		Auswahlkriterien sind auf der einen Seite die Qualität der
		Integration, auf der anderen die für diese Diplomarbeit zur
		Verfügung stehende Zeit.
	</fo:block>
</fo:flow>
</fo:page-sequence>
	<fo:page-sequence master-reference="default">
<fo:static-content flow-name="xsl-region-before">
<fo:block border-bottom="solid 1px silver" text-align="end" font-size="10pt" font-family="Helvetica">Evaluation anhand einer Beispielanwendung</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<fo:block font-size="12pt" font-family="Helvetica">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block space-after="0.5em" space-before="1em" id="Evaluation anhand einer Beispielanwendung" font-weight="bold" font-size="16pt" font-family="Helvetica">5. Evaluation anhand einer Beispielanwendung</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
		Abschließend werden die im Rahmen dieser Arbeit erbrachten
		Ergebnisse validiert. Dazu wird ein Beispielszenario entwickelt,
		welches die in dieser Arbeit erbrachten Ergebnisse demonstriert.
		In Frage kommende Anwendungsdomänen sind jene, in denen
		üblicherweise auch Agententechnologie und Anwendungsserver zum
		Einsatz kommen. Da der Schwerpunkt dieser Arbeit auf der Analyse
		der Integrationsmöglichkeiten und der Implementierung einer
		solchen liegen, wird das Szenario wahrscheinlich nur einen Teil
		einer Domäne abdecken. Wichtig ist, dass es die Vorteile der
		Integration deutlich macht.
	</fo:block>
</fo:flow>
</fo:page-sequence>
	<fo:page-sequence master-reference="default">
<fo:static-content flow-name="xsl-region-before">
<fo:block border-bottom="solid 1px silver" text-align="end" font-size="10pt" font-family="Helvetica">Zusammenfassung und Ausblick</fo:block>
</fo:static-content>
<fo:static-content flow-name="xsl-region-after">
<fo:block font-size="12pt" font-family="Helvetica">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block space-after="0.5em" space-before="1em" id="Zusammenfassung und Ausblick" font-weight="bold" font-size="16pt" font-family="Helvetica">6. Zusammenfassung und Ausblick</fo:block>
<fo:block text-align="justify" font-size="12pt" font-family="Times">
		Darüber hinaus soll ein Ausblick auf weitere
		Integrationsmöglichkeiten gemacht werden.
	</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to