BTW, Andrew , we have a solution for docs contributions. In fact you don't have to be a committer to write the docs. However since produced docs are distributed with Cayenne, you will need to submit to the ASF a signed contributor license agreement (http://apache.org/licenses/), and then we can give you write access to Confluence.

If you could print, sign, scan and email to me the CLA form from the link above, I'll set you up.

Thanks,
Andrus


On May 13, 2010, at 10:55 AM, Andrew Lindesay wrote:

Hello;

= = = = = = = = = = =

It would be useful to have a mention and link from;

        .../doc30/caching-and-fresh-data.html

to here;

        .../doc30/configuring-caching-behavior.html

= = = = = = = = = = =

On the page;

        .../doc30/configuring-caching-behavior.html

I am not sure what mark-up system it uses so I have left this in LaTeX for now; Ari - hope you can transcribe this OK. This appears to work fine, but feel free to edit it if I have made any mistakes;

\subsection{Configuration of JMS Change Notification in a Jetty 7 Deployment with ActiveMQ}

It is assumed that the Jetty deployment has been configured to "look in" {\tt lib/ext}. Also assumed is that the Jetty deployment is configured to support JNDI. Both of these configurations can be achieved by editing the following line in the {\tt start.ini} to look something like this;

\framebox{OPTIONS=Server,jmx,resources,websocket,ext,plus}

In this example, the messaging middleware server \href{http://activemq.apache.org }{ActiveMQ} is employed. The use of ActiveMQ assumes that the necessary client ActiveMQ driver jar files from the ActiveMQ distribution have been installed into the {\tt lib/ext} directory in the Jetty deployment.

In this example, the ficticious Cayenne ``Data Domain Name'' is called ``foo''. In the Cayenne modeller, the ``Remote Change Notifications'' is checked and the ``Connection Factory Name'' is set to;

\framebox{jms/footopicconnectionfactory}

The following would appear in the {\tt jetty.xml} file;

\vspace{.2in}
\hrule
\begin{verbatim}<New class="org.eclipse.jetty.plus.jndi.Resource">
<Arg></Arg>
<Arg>jms/footopicconnectionfactory</Arg>
<Arg>
<New class="org.apache.activemq.ActiveMQConnectionFactory">
 <Arg>tcp://msg01.foo.co.nz:61616</Arg>
</New>
</Arg>
</New>

<New class="org.eclipse.jetty.plus.jndi.Resource">
<Arg>org_apache_cayenne_access_DataRowStore_foo</Arg>
<Arg>
 <New class="org.apache.activemq.command.ActiveMQTopic">
  <Arg>foochangenotificationtopic</Arg>
 </New>
</Arg>
</New>

\end{verbatim}
\hrule

That following would appear in the servlet's {\tt web.xml} file;

{\small
\vspace{.2in}
\hrule
\begin{verbatim}
<resource-ref>
<res-ref-name>jms/footopicconnectionfactory</res-ref-name>
<res-type>javax.jms.TopicConnectionFactory</res-type>
<res-auth>Container</res-auth>
</resource-ref>

<resource-env-ref>
<resource-env-ref-name>org_apache_cayenne_access_DataRowStore_foo</ resource-env-ref-name>
<resource-env-ref-type>javax.jms.Topic</resource-env-ref-type>
</resource-env-ref>

\end{verbatim}
\hrule
}

This configuration should enable change notification to function.

= = = = = = = = = = =

cheers.

___
Andrew Lindesay
www.silvereye.co.nz


Reply via email to