Quantcast
Channel: Flex Monkey Patches » LiveCycle DataServices
Viewing all articles
Browse latest Browse all 5

Deploying Multiple LCDS wars to the same servlet container

$
0
0

If you look at a standalone install of LCDS 2.6 you will see 2 instances of LCDS deployed in the 1 Tomcat Servlet container.

\tomcat\webapps\lcds
\tomcat\webapps\lcds-samples

These 2 instances “should” be configured so they can run simultaneously without any conflicts.
(I say should since these are really meant as samples/demos and conflicting ports may not have been taken into account since for demo or dev purposes you could easily remove one of the deployed wars should there be any detrimental conflicts.)

The key to having 2 LCDS war deployments in the same servlet container is within the configuration of your endpoints/channels within the services-config.xml file.

Looking in the sample config files located here: \resources\config there are a few useful comments in the services-config.xml file that are useful to note in answering this question:

This essentially means that endpoint urls that look like this:

http://{server.name}:{server.port}/{context.root}

will have their tokens “filled in” at request time from the servlet container.
(ie when you request the swf via http://myserver:8080/samples, the server.name, server.port and context.root tokens will be filled in for the endpoint from the URL used to call the swf.)

So you either need to stick with using the tokens in your config or hardcode unique endpoint urls per LCDS war deployment.

Endpoint urls that look like this:

rtmp://{server.name}:2038

will have the server.name token “filled in” at request time. 2 LCDS wars deployed in the same servlet container will have the same server.name token and so must be configured to listen on different ports for each deployed war.

Another useful comment in the services-confi.xml file is:

So you will see endpoint urls that look like this:

http://{server.name}:2080/nioamf

In this case, like the rtmp endpoint, the server.name token would be “filled in” at request time. 2 LCDS wars deployed in the same servlet container will have the same server.name token and so must be configured to listen on different port/ combinations for each deployed war.

The docs on LCDS Channels and Endpoints can provide you with more info:

http://livedocs.adobe.com/livecycle/8.2/programLC/programmer/lcds/index.html

Also for a good summary of channels/endpoints see this blogpost by one of the LCDS engineers:

http://www.dcooper.org/Blog/client/index.cfm?mode=entry&entry=8E1439AD-4E22-1671-58710DD528E9C2E7


Viewing all articles
Browse latest Browse all 5

Trending Articles