12.11.2014 Views

web server - Borland Technical Publications

web server - Borland Technical Publications

web server - Borland Technical Publications

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Other Considerations<br />

}<br />

}<br />

ref.add( new javax.naming.StringRefAddr(<br />

"connectionmanager-class", value ) );<br />

}<br />

return ref;<br />

// ...<br />

}<br />

Then implement the associated object factory class, in this case:<br />

com.shme.shmeAdapter.GoodCFObjectFactory<br />

package com.shme.shmeAdapter;<br />

import javax.naming.spi.*;<br />

import javax.resource.spi.*;<br />

public class GoodCFObjectFactory implements ObjectFactory {<br />

public GoodCFObjectFactory() {};<br />

public Object getObjectInstance( Object obj,<br />

javax.naming.Name name,<br />

javax.naming.Context context,<br />

java.util.Hashtable env )<br />

throws Exception<br />

{<br />

if ( !( obj instanceof javinstance ofReference ) )<br />

{<br />

return null;<br />

}<br />

javax.naming.Reference ref = (javax.naming.Reference)obj;<br />

if ( ref.getClassName().equals(<br />

"com.shme.shmeAdapter.GoodConnectionFactory" ) )<br />

{<br />

ManagedConnectionFactory refMcf = null;<br />

ConnectionManager refCm = null;<br />

if ( ref.get( "managedconnectionfactory-class" ) != null )<br />

{<br />

String managedCxFactoryStr =<br />

(String)ref.get( "managedconnectionfactory-class" ).getContent();<br />

Class mcfClass = Class.forName( managedCxFactoryStr );<br />

refMcf = (ManagedConnectionFactory)mcfClass.newInstance();<br />

}<br />

if ( ref.get( "connectionmanager-class" ) != null )<br />

{<br />

String cxManagerStr = (String)ref.get( "connectionmanager-class"<br />

).getContent();<br />

Class cxmClass = Class.forName( cxManagerStr );<br />

java.lang.ClassLoader cloader = cxmClass.getClassLoader();<br />

refCm = (ConnectionManager)cxmClass.newInstance();<br />

}<br />

GoodConnectionFactory cf = null;<br />

if ( refCm != null )<br />

Chapter 27: Using VisiConnect 281

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!