Hosting a CORBA object with a Weblogic Container

Hi,
I'm trying to host a CORBA object within a Weblogic (8.1) container
using the weblogic built-in ORB and only using CORBA-compliant APIs.
When I try to obtain the RootPOA using:
org.omg.CORBA.Object obj = orb.resolve_initial_references("RootPOA");
The container throws the exception:
Unexpected System Exception:org.omg.CORBA.ORBPackage.InvalidName
Usually this means that the POA was not registered as an initial
service, but that just can't be the case since I know the weblogic EJB
container uses the POA.
Btw- the handle to the orb was obtained using:
// Initialize the ORB.
String args[] = null;
Properties Prop;
Prop = new Properties();
Prop.put("org.omg.CORBA.ORBClass",
"weblogic.wtc.corba.ORB");
ORB orb = (ORB)new InitialContext().lookup("java:comp/ORB");
Any ideas are greatly appreciated.
Mike

Thanks Andy!
Btw- orbd must be running for resolve_initial_references() to work.
Seems weird to me.
After which, I was able to host a callback servant in my weblogic
container using the native JDK ORB/POA but now I've run into a deeper
issue. When the client calls back on the hosted callback object, the
JDK ORB processes the request but then raises an
IT_GIOP:REPLY_MESSAGE_NOT_CONSUMED exception.
It's since been brought to my attention that this indicates a
marshalling error with regards to extra bytes being on the stream after
the request has been unmarshaled. Either due to a spotty or older ORB
implementation. The advise is that the JDK ORB is just such an ORB.
I'd like to try using the JacORB within my weblogic container.
Has anyone done this that you know of?
Thanks for the help,
Mike
Andy Piper wrote:
Michael McKnerney <[email protected]> writes:
Hmmn weird. It seems like it wants a URL or something to connect to which seems wrong.
The source for list_initial_services says:
* Get a list of the initially available CORBA services.
* This does not work unless an ORBInitialHost is specified during initialization
* (or unless there is an ORB running on the AppletHost) since the localhostname
* is inaccessible to applets. If a service properties URL was specified,
* then it is used, otherwise the bootstrapping protocol is used.
* @return A list of the initial services available.
So you need an initial host if you use this. However, the root poa is
already registered, so it looks like you can use that. You will need
an initial host if you want to bind things into the NS, in theory you
should be able to use WLS for that.
andy
Thank Andy,
Still no luck, however, the call does not hang it thows and I wasn't catching the
exception and printing the stack trace.
Here's my sample code and the stack trace. Do you see what the problem is?
// Method: ejbFindBigAccounts {
try {
String args[] = null;
Properties Prop = new Properties();
Prop.put("org.omg.CORBA.ORBClass",
"com.sun.corba.se.internal.Interceptors.PIORB");
System.out.println("Initializing the orb...");
ORB orb = org.omg.CORBA.ORB.init(args, Prop);
// Test list_initial_services
System.out.println("Calling resolve_initial_references");
java.lang.String[] ids = orb.list_initial_services();
for (int i=0; i<ids.length; ++i)
System.out.println(ids);
} catch (Exception e) {
System.out.println("Caught Exception: " + e);
e.printStackTrace();
throw new EJBException (e);
Output (including stack trace)
====================
Initializing the orb...
Calling resolve_initial_references
Caught Exception: org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 201 completed:
No
org.omg.CORBA.COMM_FAILURE: vmCORBAObjectImpl.javacid: SUN minor code: 201 completed: No
at
com.sun.corba.se.internal.iiop.ConnectionTable.getConnection(ConnectionTable.java:148)
at
com.sun.corba.se.internal.iiop.ConnectionTable.getConnection(ConnectionTable.java:65)
at com.sun.corba.se.internal.iiop.GIOPImpl.getConnection(GIOPImpl.java:67)
at
com.sun.corba.se.internal.corba.ClientDelegate.createRequest(ClientDelegate.java:652)
at
com.sun.corba.se.internal.corba.ClientDelegate.createRequest(ClientDelegate.java:594)
at
com.sun.corba.se.internal.corba.InitialNamingClient.getInitialServices(InitialNamingClient.java:997)
at
com.sun.corba.se.internal.corba.InitialNamingClient.cachedServices(InitialNamingClient.java:967)
at
com.sun.corba.se.internal.corba.InitialNamingClient.list_initial_services(InitialNamingClient.java:925)
at com.sun.corba.se.internal.corba.ORB.list_initial_services(ORB.java:2414)
at
examples.ejb20.basic.beanManaged.AccountBean.ejbFindBigAccounts(AccountBean.java:328)
[snip]
Seeing that its trying to get a connection, does that mean I need to run the jdk orbd? I
figured the weblogic server would take the place of orbd. Anyway, I ran the same test
with orbd running and got the same exception and stack trace.
Thanks, Mike
Andy Piper wrote:
Michael McKnerney <[email protected]> writes:
Btw- I will use the J2SE ORB in the meantime. My understanding is that there can only be
one ORB per weblogic server, or can the J2SE co-exist with the existing weblogic ORB? (I
looked at the docs but it was still not clear to me)
They should be able to coexist if you pass the ORB class in as a
property to ORB.init() and are not using RMI-IIOP. The WLS
ORBSingletonClass should be compatible with the Sun one a vice versa.
-Dorg.omg.CORBA.ORBClass=com.sun.corba.se.internal.Interceptors.PIORB
Try putting this in ORB.init() instead.
But now anytime I invoke on an object reference, the call hangs.
Not sure. can you get threaddumps.
andy
[att1.html]

Similar Messages

  • How to register RMI object with runnign Weblogic Server instance?

    I need to write some RMI objects(non EJB) and register it with the already running weblogic server so that I can access them from a RMI client.
    Can some help me with this?

    So more precisely the way I am doing it is
    I have a remote interface
    package com.myserv.rmi;
    public interface NSPQueryExecutionService extends java.rmi.Remote
    public void getQueryExecutionDelegate();
    I have the Implementation as
    package com.myserv.rmi;
    import java.util.Properties;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    public class NSPQueryExecutionServiceImpl
    implements NSPQueryExecutionService
    public static final void main (String[] arg) {
    try {
    Properties properties = null;
    properties = new Properties();
    properties.put (Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
    Context context = new InitialContext(properties);
    context.bind("QueryExecutionService", new NSPQueryExecutionServiceImpl());
    System.out.println("================================> QueryExecutionService Bound");
    } catch (Exception ex){
    ex.printStackTrace();
    System.out.println("Unable to start QueryExecutionService");
    public NSPQueryExecutionServiceImpl()
    public void getQueryExecutionDelegate()
    System.out.println("inside remote");
    I compile these classes and I do a weblogic.rmic as
    java weblogic.rmic com.myserv.rmi.NSPQueryExecutionServiceImpl
    I run the NSPQueryExecutionServiceImpl class to bind the RMIObject with the weblogic server.
    Finally when I try to access this from my client it is able to access the object but when I invoke an operation on it gives the exception that RJVM is already shutdown.
    Edited by kuldeep.sharma at 02/15/2007 9:37 AM

  • Weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ Cannot export non clusterable object with jndiName ]

    Hi,
    I am trying to deploy an EJB module have 4-5 EJB's on weblogic 8.1 through JBuilder.
    I am getting following error during deployment.
    Exception:weblogic.management.ApplicationException: prepare failed for Sample.jar
         Module: Sample.jar     Error: Exception preparing module: EJBModule(Sample.jar,status=NEW)
    Unable to deploy EJB: SampleBean from Sample.jar:
    weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ Cannot export non
    clusterable object with jndiName ]
         at weblogic.utils.Debug.assertion(Debug.java:57)
         at weblogic.rmi.extensions.server.ServerHelper.exportObject(ServerHelper.java:272)
         at weblogic.ejb20.internal.BaseEJBHome.setup(BaseEJBHome.java:95)
         at weblogic.ejb20.internal.StatelessEJBHome.setup(StatelessEJBHome.java:67)
         at weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.prepare(ClientDrivenBeanInfoImpl.java:979)
         at weblogic.ejb20.deployer.EJBDeployer.setupBeanInfos(EJBDeployer.java:983)
         at weblogic.ejb20.deployer.EJBDeployer.prepare(EJBDeployer.java:1283)
         at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:477)
         at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.java:2962)
         at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplicationContainer.java:1534)
         at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1188)
         at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1031)
         at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareContainer(SlaveDeployer.java:2602)
         at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(SlaveDeployer.java:2552)
         at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2474)
         at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:798)
         at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:507)
         at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:465)
         at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
    Any clue?, what its talking about?
    Thanks
    Naresh

    Hi,
    I am trying to deploy an EJB module have 4-5 EJB's on weblogic 8.1 through JBuilder.
    I am getting following error during deployment.
    Exception:weblogic.management.ApplicationException: prepare failed for Sample.jar
         Module: Sample.jar     Error: Exception preparing module: EJBModule(Sample.jar,status=NEW)
    Unable to deploy EJB: SampleBean from Sample.jar:
    weblogic.utils.AssertionError: ***** ASSERTION FAILED *****[ Cannot export non
    clusterable object with jndiName ]
         at weblogic.utils.Debug.assertion(Debug.java:57)
         at weblogic.rmi.extensions.server.ServerHelper.exportObject(ServerHelper.java:272)
         at weblogic.ejb20.internal.BaseEJBHome.setup(BaseEJBHome.java:95)
         at weblogic.ejb20.internal.StatelessEJBHome.setup(StatelessEJBHome.java:67)
         at weblogic.ejb20.deployer.ClientDrivenBeanInfoImpl.prepare(ClientDrivenBeanInfoImpl.java:979)
         at weblogic.ejb20.deployer.EJBDeployer.setupBeanInfos(EJBDeployer.java:983)
         at weblogic.ejb20.deployer.EJBDeployer.prepare(EJBDeployer.java:1283)
         at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:477)
         at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.java:2962)
         at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplicationContainer.java:1534)
         at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1188)
         at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:1031)
         at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareContainer(SlaveDeployer.java:2602)
         at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(SlaveDeployer.java:2552)
         at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeployer.java:2474)
         at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer.java:798)
         at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:507)
         at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java:465)
         at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:25)
         at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
    Any clue?, what its talking about?
    Thanks
    Naresh

  • (bug?)Movie clip contains an object with a z value will not edit the object in place, it goes into a seperate window.

    When a movie clip contains an object with a z value, I can not edit the object in place, it goes into a seperate window.
    This changes the vanishing point relative to the movieclip instead of the stage (allong with everything else).
    This makes it very hard to keep track of where the movieclips will end up when actualy playing the animation.

    I should have explained my situation a little better. I have a machine that's made up of a number of parts, some of them are fairly large and some are quite small. When a user clicks on a part, I want to center that part on the screen and then move whole machine toward the screen until the selected part either fills the screen (for the larger parts) or the part bumps up against the front clip plane (for the smaller parts).
    I didn't think of checking for a collision with the ViewPlatform's TG, thanks for mentioning that. I wasn't sure how the ViewPlatform's location relates to the clipping plane, but I'll dig into it. I'm still learning how the ViewingPlatform, the image plate, and the clipping planes all relate to each other.

  • Regular RMI server object with WebLogic JNDI

    Is that possible to register a regular RMI object with WebLogic JNDI
    tree? I was building a simple program (using javac and rmic only) based
    on the java.rmi.* (without changing the import statements to
    weblogic.rmi.*) and using the weblogic.jndi to register the server
    object. Below is some piece of code,
    Context ctx = null;
    Hashtable ht = new Hashtable();
    ht.put(Context.INITIAL_CONTEXT_FACTORY,
    "weblogic.jndi.WLInitialContextFactory");
    ht.put(Context.PROVIDER_URL, "t3://172.20.20.20:7001");
    ctx = new InitialContext(ht);
    ctx.bind("HelloServer", obj);
    The code failed for the following reason,
    javax.naming.NamingException. Root exception is
    java.rmi.MarshalException: failed to marshal public abstract void
    weblogic.jndi.internal.NamingNode.bind(java.lang.String,java.lang.Object,java.util.Hashtable)
    throws javax.naming.NamingException,java.rmi.RemoteException; nested
    exception is:
    java.rmi.server.ExportException: A description for
    examples.rmi.hello.HelloImpl was found but it could not be read due to:
    [Failed to find examples.rmi.hello.HelloImpl_WLStub or
    examples.rmi.hello.Hello_WLStub for class examples.rmi.hello.HelloImpl]
    java.rmi.StubNotFoundException: Failed to find
    examples.rmi.hello.HelloImpl_WLStub or examples.rmi.hello.Hello_WLStub
    for class examples.rmi.hello.HelloImpl
    at
    weblogic.rmi.internal.BasicDescriptor.<init>(BasicDescriptor.java:101)
    at
    weblogic.rmi.internal.BasicRuntimeDescriptor.<init>(BasicRuntimeDescriptor.java:50)
    at
    weblogic.rmi.internal.DescriptorManager.resolveClass(DescriptorManager.java:55)
    at
    weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:39)
    at
    weblogic.rmi.internal.DescriptorManager.getDescriptor(DescriptorManager.java:30)
    at
    weblogic.rmi.internal.OIDManager.getRequestDispatcher(OIDManager.java:281)
    at
    weblogic.rmi.internal.OIDManager.getReplacement(OIDManager.java:270)
    at
    weblogic.rmi.internal.OIDManager.replaceObject(OIDManager.java:98)
    at
    weblogic.common.internal.ChunkedObjectOutputStream.replaceObject(ChunkedObjectOutputStream.java:55)
    at
    weblogic.common.internal.ChunkedObjectOutputStream$NestedObjectOutputStream.replaceObject(ChunkedObjectOutputStream.java:239)
    Any idea?
    - SteveC

    "Pyung Yoon" <[email protected]> writes:
    MediatorInterface mediator = (MediatorInterface) java.rmi.Naming.lookup("rmi://localhost:7001/TestMediator);This implies JRMP which the server does not support. You need to use t3 or iiop.
    andy

  • Implementing a Webservice with AXIS, which calls CORBA objects

    Hi @all!
    First my aim is it to invoke a Webservice by a Client. As toolkit for developing this Webservice I use AXIS 1.0. This Webservice in turn should establish a CORBA connection to a third application.
    A direct access to the CORBA objects without the AXIS Webservice works fine. The Webservice without the Corba access is also running errorfree.
    When trying to implement a Webservice with AXIS, which calls CORBA objects following fault was generated:
    "internal Server Error(500)".
    Are there known problems with AXIS in conjunction with CORBA?

    Okay here's the error log file:
    1000 of lines, which aren't very helpful for me.
    As ORB I use JacORB.
    AxisFault
    faultCode: {http://xml.apache.org/axis/}HTTP
    faultString: (500)Internal Server Error
    faultActor: null
    faultDetail:
         null: return code: 500
    <html><head><title>Apache Tomcat/4.1.18 - Error report</title><STYLE><!--H1{font-family : sans-serif,Arial,Tahoma;color : white;background-color : #0086b2;} H3{font-family : sans-serif,Arial,Tahoma;color : white;background-color : #0086b2;} BODY{font-family : sans-serif,Arial,Tahoma;color : black;background-color : white;} B{color : white;background-color : #0086b2;} HR{color : #0086b2;} --></STYLE> </head><body><h1>HTTP Status 500 - </h1><HR size="1" noshade><p><b>type</b> Exception report</p><p><b>message</b> <u></u></p><p><b>description</b> <u>The server encountered an internal error () that prevented it from fulfilling this request.</u></p><p><b>exception</b> <pre>javax.servlet.ServletException: Servlet execution threw an exception
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
         at java.lang.Thread.run(Thread.java:484)
    </pre></p><p><b>root cause</b> <pre>java.lang.NoClassDefFoundError: org/omg/PortableServer/POAOperations
         at java.lang.Class.forName0(Native Method)
         at java.lang.Class.forName(Class.java:195)
         at org.apache.axis.utils.ClassUtils$2.run(ClassUtils.java:187)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.axis.utils.ClassUtils.loadClass(ClassUtils.java:171)
         at org.apache.axis.utils.ClassUtils.forName(ClassUtils.java:154)
         at org.apache.axis.utils.cache.ClassCache.lookup(ClassCache.java:122)
         at org.apache.axis.providers.java.JavaProvider.getServiceClass(JavaProvider.java:502)
         at org.apache.axis.providers.java.JavaProvider.initServiceDesc(JavaProvider.java:535)
         at org.apache.axis.handlers.soap.SOAPService.getInitializedServiceDesc(SOAPService.java:322)
         at org.apache.axis.deployment.wsdd.WSDDService.makeNewInstance(WSDDService.java:477)
         at org.apache.axis.deployment.wsdd.WSDDDeployableItem.getNewInstance(WSDDDeployableItem.java:312)
         at org.apache.axis.deployment.wsdd.WSDDDeployableItem.getInstance(WSDDDeployableItem.java:298)
         at org.apache.axis.deployment.wsdd.WSDDDeployment.getServiceByNamespaceURI(WSDDDeployment.java:503)
         at org.apache.axis.configuration.FileProvider.getServiceByNamespaceURI(FileProvider.java:273)
         at org.apache.axis.MessageContext.getPossibleOperationsByQName(MessageContext.java:226)
         at org.apache.axis.message.BodyBuilder.onStartChild(BodyBuilder.java:150)
         at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:893)
         at org.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:459)
         at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:221)
         at org.apache.xerces.impl.XMLNamespaceBinder.handleStartElement(XMLNamespaceBinder.java:874)
         at org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(XMLNamespaceBinder.java:591)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:747)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1477)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:329)
         at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.java:525)
         at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.java:581)
         at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:152)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1175)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:394)
         at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:232)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:546)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:377)
         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:304)
         at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:701)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:335)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
         at java.lang.Thread.run(Thread.java:484)
    </pre></p><HR size="1" noshade><h3>Apache Tomcat/4.1.18</h3></body></html>
    (500)Internal Server Error
         at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:630)
         at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:131)
         at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:156)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:126)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:182)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2113)
         at org.apache.axis.client.Call.invoke(Call.java:2102)
         at org.apache.axis.client.Call.invoke(Call.java:1851)
         at org.apache.axis.client.Call.invoke(Call.java:1777)
         at org.apache.axis.client.Call.invoke(Call.java:1315)
         at CsbClient.main(CsbClient.java:82)
    [INFO] enterprise - -Mapping Exception to AxisFault <(500)Internal Server Error>
    (WSDDDeployableItem.java:312)
         at org.apache.axis.deployment.wsdd.WSDDDeployableItem.getInstance(WSDDDeployableItem.java:298)
         at org.apache.axis.deployment.wsdd.WSDDDeployment.getServiceByNamespaceURI(WSDDDeployment.java:503)
         at org.apache.axis.configuration.FileProvider.getServiceByNamespaceURI(FileProvider.java:273)
         at org.apache.axis.MessageContext.getPossibleOperationsByQName(MessageContext.java:226)
         at org.apache.axis.message.BodyBuilder.onStartChild(BodyBuilder.java:150)
         at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:893)
         at org.apache.xerces.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:459)
         at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:221)
         at org.apache.xerces.impl.XMLNamespaceBinder.handleStartElement(XMLNamespaceBinder.java:874)
         at org.apache.xerces.impl.XMLNamespaceBinder.emptyElement(XMLNamespaceBinder.java:591)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:747)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1477)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:329)
         at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.java:525)
         at org.apache.xerces.parsers.DTDConfiguration.parse(DTDConfiguration.java:581)
         at org.apache.xerces.parsers.XMLParser.parse(XMLParser.java:152)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1175)
         at javax.xml.parsers.SAXParser.parse(SAXParser.java:394)
         at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:232)
         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:546)
         at org.apache.axis.Message.getSOAPEnvelope(Message.java:377)
         at org.apache.axis.server.AxisServer.invoke(AxisServer.java:304)
         at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:701)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:335)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
         at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
         at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
         at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
         at java.lang.Thread.run(Thread.java:484)
    </pre></p><HR size="1" noshade><h3>Apache Tomcat/4.1.18</h3></body></html>
    (500)Internal Server Error
         at org.apache.axis.transport.http.HTTPSender.readFromSocket(HTTPSender.java:630)
         at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:131)
         at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71)
         at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:156)
         at org.apache.axis.SimpleChain.invoke(SimpleChain.java:126)
         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:182)
         at org.apache.axis.client.Call.invokeEngine(Call.java:2113)
         at org.apache.axis.client.Call.invoke(Call.java:2102)
         at org.apache.axis.client.Call.invoke(Call.java:1851)
         at org.apache.axis.client.Call.invoke(Call.java:1777)
         at org.apache.axis.client.Call.invoke(Call.java:1315)
         at CsbClient.main(CsbClient.java:82)
    Exception in thread "main"

  • MapBuilder Error:Can not find a GeoRaster object with specified rdt and rid

    Hello,
    I can't GeoRaster data in the preview of the MapBuilder and MapViewer. The GeoRasterViewer shows the Raster images without problems.
    MapBuilders error message:
    19.11.2008 13:07:11 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    SCHWERWIEGEND: GeoRaster load Exception:
    oracle.spatial.georaster.GeoRasterException: Can not find a GeoRaster object with specified rdt and rid.
         at oracle.spatial.georaster.JGeoRaster.validateConn(JGeoRaster.java:608)
         at oracle.sdovis.theme.GeoRasterThemeProducer$JGeoRasterGTP.<init>(GeoRasterThemeProducer.java:2037)
         at oracle.sdovis.theme.GeoRasterThemeProducer.prepareData(GeoRasterThemeProducer.java:694)
         at oracle.sdovis.GeoRasterTheme.prepareData(GeoRasterTheme.java:95)
         at oracle.sdovis.LoadThemeData.run(LoadThemeData.java:75)
    19.11.2008 13:07:11 oracle.sdovis.LoadThemeData run
    SCHWERWIEGEND: Exception fetching data for theme RAS_DGK.
    Message:GeoRaster load Exception: Can not find a GeoRaster object with specified rdt and rid.
    Description:
         at oracle.sdovis.theme.GeoRasterThemeProducer.prepareData(GeoRasterThemeProducer.java:1109)
         at oracle.sdovis.GeoRasterTheme.prepareData(GeoRasterTheme.java:95)
         at oracle.sdovis.LoadThemeData.run(LoadThemeData.java:75)
    19.11.2008 13:07:11 oracle.sdovis.MapMaker buildDataMBR
    WARNUNG: null MBR resulted from buildDataMBR.
    The errror message of MapViewer is nearly the same with some more informations about the spatial query and the coordintes of the query window. If I run that spatial query in the sqldeveloper it returns a result!
    I did following stebs:
    - saved a tiff-Image in a GeoRaster table with pyramid an tiled images.
    - checked the sdo_geom_metadata --> they are correct
    - checked the sdo_georaster object for the rdt table name and rasterid --> they are correct
    - checked the rdt table --> objects with that rid are saved
    - checked the mdsys.sdo_geor_sysdata table --> entry is correct
    - validate the geraster with the sdo_geor.validategeoraster function --> object is valid
    - updated the spatial extend of the image and try again the preview functio--> the same error
    The databse server is a virtual Linux server with Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit.
    The web server is a Window 2003 R2 Server with a weblogic server and mapviewer patch 5 (Ver1033p5_B081010).
    For a test I did the same (the same table script, the same raster data, the same import method) on a developer pc (WinXP Pro SP2) with Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 (32bit) the same mapbuilder version but with the MapViewer QuickStartKid and it works fine!!!
    Has anyone an idea?
    Greeting,
    Cord
    Edited by: Corti on Nov 19, 2008 2:14 PM

    Hi Joao,
    Thanks so far.
    I'm previewing a GeoRaster theme. I created it with the MapBuilder GeoRaster wizard. The theme difinition is (out of the export file):
    RAS_DGK|
    null|
    RAS_DGK|
    GEORASTER|
    <?xml version="1.0" standalone="yes"?>
    <styling_rules theme_type="georaster">
    </styling_rules>|
    (GeoRaster table name is "RAS_DGK", theme name is also "RAS_DGK")
    I get following log information:
    preview without a coordinate or scale:
    MapBuilder Error (as pop up): MAPVIEWER 01005: no spatial data to render
    log file:
    20.11.2008 10:17:27 oracle.sdovis.LoadThemeData run
    FEINER: LoadThemeData running thread: Thread-43
    20.11.2008 10:17:27 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: Original query window: -Infinity,-Infinity,NaN,NaN
    20.11.2008 10:17:27 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: [Query] select grt.GEORASTER, grt.GEORASTER.metadata.getClobVal() from RAS_DGK grt
    20.11.2008 10:17:27 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: Fetch size: 100
    20.11.2008 10:17:27 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    SCHWERWIEGEND: GeoRaster load Exception:
    oracle.spatial.georaster.GeoRasterException: Can not find a GeoRaster object with specified rdt and rid.
         at oracle.spatial.georaster.JGeoRaster.validateConn(JGeoRaster.java:608)
         at oracle.sdovis.theme.GeoRasterThemeProducer$JGeoRasterGTP.<init>(GeoRasterThemeProducer.java:2037)
         at oracle.sdovis.theme.GeoRasterThemeProducer.prepareData(GeoRasterThemeProducer.java:694)
         at oracle.sdovis.GeoRasterTheme.prepareData(GeoRasterTheme.java:95)
         at oracle.sdovis.LoadThemeData.run(LoadThemeData.java:75)
    20.11.2008 10:17:27 oracle.sdovis.LoadThemeData run
    SCHWERWIEGEND: Exception fetching data for theme RAS_DGK.
    Message:GeoRaster load Exception: Can not find a GeoRaster object with specified rdt and rid.
    Description:
         at oracle.sdovis.theme.GeoRasterThemeProducer.prepareData(GeoRasterThemeProducer.java:1109)
         at oracle.sdovis.GeoRasterTheme.prepareData(GeoRasterTheme.java:95)
         at oracle.sdovis.LoadThemeData.run(LoadThemeData.java:75)
    20.11.2008 10:17:27 oracle.sdovis.MapMaker buildDataMBR
    WARNUNG: null MBR resulted from buildDataMBR.
    preview with a center coordinate of the image and a scale:
    20.11.2008 10:18:43 oracle.sdovis.SRS getOptimalQueryWindow
    AM FEINSTEN: *** isGeodetic=false, unit=METER
    20.11.2008 10:18:43 oracle.sdovis.LoadThemeData run
    FEINER: LoadThemeData running thread: Thread-45
    20.11.2008 10:18:43 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: Original query window: 2550045.7746478873,5608500.0,2551954.2253521127,5609500.0
    20.11.2008 10:18:43 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: [Query] select grt.GEORASTER, grt.GEORASTER.metadata.getClobVal() from RAS_DGK grt WHERE MDSYS.SDO_FILTER(grt.GEORASTER.spatialextent, MDSYS.SDO_GEOMETRY(2003, 31466, NULL, MDSYS.SDO_ELEM_INFO_ARRAY(1, 1003, 3), MDSYS.SDO_ORDINATE_ARRAY(?,?,?,?)), 'querytype=WINDOW') = 'TRUE'
    20.11.2008 10:18:43 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: Fetch size: 100
    20.11.2008 10:18:43 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    SCHWERWIEGEND: GeoRaster load Exception:
    oracle.spatial.georaster.GeoRasterException: Can not find a GeoRaster object with specified rdt and rid.
         at oracle.spatial.georaster.JGeoRaster.validateConn(JGeoRaster.java:608)
         at oracle.sdovis.theme.GeoRasterThemeProducer$JGeoRasterGTP.<init>(GeoRasterThemeProducer.java:2037)
         at oracle.sdovis.theme.GeoRasterThemeProducer.prepareData(GeoRasterThemeProducer.java:694)
         at oracle.sdovis.GeoRasterTheme.prepareData(GeoRasterTheme.java:95)
         at oracle.sdovis.LoadThemeData.run(LoadThemeData.java:75)
    20.11.2008 10:18:43 oracle.sdovis.LoadThemeData run
    SCHWERWIEGEND: Exception fetching data for theme RAS_DGK.
    Message:GeoRaster load Exception: Can not find a GeoRaster object with specified rdt and rid.
    Description:
         at oracle.sdovis.theme.GeoRasterThemeProducer.prepareData(GeoRasterThemeProducer.java:1109)
         at oracle.sdovis.GeoRasterTheme.prepareData(GeoRasterTheme.java:95)
         at oracle.sdovis.LoadThemeData.run(LoadThemeData.java:75)
    20.11.2008 10:18:43 oracle.sdovis.DBMapMaker renderEm
    INFO: **** time spent on loading features: 234ms.
    20.11.2008 10:18:43 oracle.sdovis.RenderingEngine prepareForRendering
    AM FEINSTEN: xfm: 0.284 0.0 0.0 -0.284 -724212.9999999999 1593097.9999999998
    20.11.2008 10:18:43 oracle.sdovis.ImageRenderer renderGeoRasterTheme
    WARNUNG: GeoRaster theme RAS_DGK has no rendered images.
    20.11.2008 10:18:43 oracle.sdovis.VectorRenderer render
    FEINER: time to render theme RAS_DGK with 0 styled features: 0ms
    20.11.2008 10:18:43 oracle.sdovis.DBMapMaker renderEm
    INFO: **** time spent on rendering: 16ms
    If I run the sql statement in the log file, it returns a result.
    select grt.georid, grt.GEORASTER, grt.GEORASTER.metadata.getClobVal()
    from ras_dgk grt
    WHERE MDSYS.SDO_FILTER(grt.GEORASTER.spatialextent,
    MDSYS.SDO_GEOMETRY(2003, 31466, NULL,
    MDSYS.SDO_ELEM_INFO_ARRAY(1, 1003, 3),
    MDSYS.SDO_ORDINATE_ARRAY(2550045.7746478873,5608500.0,2551954.2253521127,5609500.0)), 'querytype=WINDOW') = 'TRUE';
    GEORID
    2
    GEORASTER
    MDSYS.SDO_GEORASTER(20001,MDSYS.SDO_GEOMETRY(2003,31466,null,MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,3),MDSYS.SDO_ORDINATE_ARRAY(2550000,5608000,2552000,5610000)),RDT_RAS_DGK,522,oracle.xdb.XMLType@194a7ec)
    GEORASTER.metadata.getClobVal()
    <georasterMetadata xmlns="http://xmlns.oracle.com/spatial/georaster">
    <objectInfo>
    <rasterType>20001</rasterType>
    <isBlank>false</isBlank>
    <defaultRed>1</defaultRed>
    <defaultGreen>1</defaultGreen>
    <defaultBlue>1</defaultBlue>
    </objectInfo>
    <rasterInfo>
    <cellRepresentation>UNDEFINED</cellRepresentation>
    <cellDepth>8BIT_U</cellDepth>
    <totalDimensions>2</totalDimensions>
    <dimensionSize type="ROW">
    <size>6299</size>
    </dimensionSize>
    <dimensionSize type="COLUMN">
    <size>6299</size>
    </dimensionSize>
    <ULTCoordinate>
    <row>0</row>
    <column>0</column>
    </ULTCoordinate>
    <blocking>
    <type>REGULAR</type>
    <totalRowBlocks>4</totalRowBlocks>
    <totalColumnBlocks>4</totalColumnBlocks>
    <rowBlockSize>2048</rowBlockSize>
    <columnBlockSize>2048</columnBlockSize>
    </blocking>
    <interleaving>BSQ</interleaving>
    <pyramid>
    <type>DECREASE</type>
    <resampling>NN</resampling>
    <maxLevel>6</maxLevel>
    </pyramid>
    <compression>
    <type>NONE</type>
    </compression>
    </rasterInfo>
    <spatialReferenceInfo>
    <isReferenced>true</isReferenced>
    <SRID>31466</SRID>
    <modelCoordinateLocation>UPPERLEFT</modelCoordinateLocation>
    <modelType>FunctionalFitting</modelType>
    <polynomialModel rowOff="0" columnOff="0" xOff="0" yOff="0" zOff="0" rowScale="1" columnScale="1" xScale="1" yScale="1" zScale="1">
    <pPolynomial pType="1" nVars="2" order="1" nCoefficients="3">
    <polynomialCoefficients>17668678.695368 0 -3.14949718277477</polynomialCoefficients>
    </pPolynomial>
    <qPolynomial pType="1" nVars="0" order="0" nCoefficients="1">
    <polynomialCoefficients>1</polynomialCoefficients>
    </qPolynomial>
    <rPolynomial pType="1" nVars="2" order="1" nCoefficients="3">
    <polynomialCoefficients>-8031218.31607409 3.14949718277477 0</polynomialCoefficients>
    </rPolynomial>
    <sPolynomial pType="1" nVars="0" order="0" nCoefficients="1">
    <polynomialCoefficients>1</polynomialCoefficients>
    </sPolynomial>
    </polynomialModel>
    </spatialReferenceInfo>
    <layerInfo>
    <layerDimension>BAND</layerDimension>
    <subLayer>
    <layerNumber>1</layerNumber>
    <layerDimensionOrdinate>0</layerDimensionOrdinate>
    <layerID>1</layerID>
    <colorMap>
    <colors>
    <cell value="0" blue="255" red="255" green="255" alpha="255"/>
    <cell value="1" blue="0" red="0" green="0" alpha="255"/>
    </colors>
    </colorMap>
    </subLayer>
    </layerInfo>
    </georasterMetadata>
    I checked also the content of rdt table and it contains entries with that raster id (= 522).
    Finally the log file when I use the preview directly on the GeoRaster table without a theme:
    20.11.2008 10:23:46 oracle.sdovis.LoadThemeData run
    FEINER: LoadThemeData running thread: Thread-55
    20.11.2008 10:23:46 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: Original query window: -Infinity,-Infinity,NaN,NaN
    20.11.2008 10:23:46 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: [Query] select grt.GEORASTER from RAS_DGK grt where grt.GEORASTER.rasterid = ? and grt.GEORASTER.rasterdatatable = ?
    20.11.2008 10:23:46 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    FEINER: Fetch size: 100
    20.11.2008 10:23:46 oracle.sdovis.theme.GeoRasterThemeProducer prepareData
    SCHWERWIEGEND: GeoRaster load Exception:
    oracle.spatial.georaster.GeoRasterException: Can not find a GeoRaster object with specified rdt and rid.
         at oracle.spatial.georaster.JGeoRaster.validateConn(JGeoRaster.java:608)
         at oracle.sdovis.theme.GeoRasterThemeProducer$JGeoRasterGTP.<init>(GeoRasterThemeProducer.java:2037)
         at oracle.sdovis.theme.GeoRasterThemeProducer.prepareData(GeoRasterThemeProducer.java:694)
         at oracle.sdovis.GeoRasterTheme.prepareData(GeoRasterTheme.java:95)
         at oracle.sdovis.LoadThemeData.run(LoadThemeData.java:75)
    20.11.2008 10:23:46 oracle.sdovis.LoadThemeData run
    SCHWERWIEGEND: Exception fetching data for theme RAS_DGK.
    Message:GeoRaster load Exception: Can not find a GeoRaster object with specified rdt and rid.
    Description:
         at oracle.sdovis.theme.GeoRasterThemeProducer.prepareData(GeoRasterThemeProducer.java:1109)
         at oracle.sdovis.GeoRasterTheme.prepareData(GeoRasterTheme.java:95)
         at oracle.sdovis.LoadThemeData.run(LoadThemeData.java:75)
    20.11.2008 10:23:46 oracle.sdovis.MapMaker buildDataMBR
    WARNUNG: null MBR resulted from buildDataMBR.
    If you need more information - please ask for it.
    Cord

  • Using a polymorphic view object with binding

    Hi,
    I'm hoping there's something simple I'm missing when trying to setup up the bindings for a ADF/struts page using a polymorphic view object.
    I'm using Entity and VO polymorphism to create a Question which has different types - boolean, multi-choice, likert, etc. I have the various question types created as sub type entity and view objects and added to the app module - when added to the app module the question types are subtypes of QuestionView so they don't actually appear in the Data Controls palette. This setup is like that used in Steve Muench's examples (blog at http://radio.weblogs.com/0118231/stories/2003/02/06/constructingTheDesiredEntityInAPolymorphicViewObject.html and the related undocumented one)
    My question is, how do I get to the data and have jdev create the necessary bindings for the extra attributes the subtype questions have? Since they don't appear as available data controls I can't create a binding iterator or anything for them - short of adding them as spearate view objects (which destroys the whole point of using polymorphism in this case) is there a way to do this?
    Really, the only reason I want to use the polymorphism is so I can have different types of entity validation depending on the type. Should I just simplify this to be one entity object with one VO and put all the validation into "if else's" based on a discriminator?
    Assistance appreciated...
    - Nathaniel

    How else are you planning to associate a JUTableBinding to the 'common' iterator containing all four types of rows and then selectively display them? Perhaps you'd need a custom model over the JUTabelModel that'd filter the rows out.
    I'm not sure if all that trouble is worth it given that your datasets (as far as mentioned in this post) are not large. If these tables/data has to be refreshed/executed a number of times, then you may see the overhead of four queries otherwise it should be fine as database is always faster in filtering rows than doing that in memory.

  • Problem using CORBA clients with RMI/EJB servers..!!!???

    Hi,
    I have a question on using EJB / or RMI servers with CORBA clients using
    RMI-IIOP transport, which in theory should work, but in practice has few
    glitches.
    Basically, I have implemented a very simple server, StockTreader, which
    looks up for a symbol and returns a 'Stock' object. In the first example, I
    simplified the 'Stock' object to be a mere java.lang.String, so that lookup
    would simply return the 'synbol'.
    Then I have implemented the above, as an RMI-IIOP server (case 1) and a
    CORBA server (case 2) with respective clients, and the pair of
    client-servers work fine as long as they are CORBA-to-CORBA and RMI-to-RMI.
    But the problem arises when I tried using the RMI server (via IIOP) with the
    CORBA client, when the client tries to narrow the object ref obtained from
    the naming service into the CORBA idl defined type (StockTrader) it ends up
    with a class cast exception.
    This is what I did to achieve the above results:
    [1] Define an RMI interface StockTrader.java (extending java.rmi.Remote)
    with the method,
    public String lookup( String symbol) throws RMIException;
    [2] Implement the StorckTrader interface (on a PortableRemoteObject derived
    class, to make it IIOP compliant), and then the server to register the stock
    trader with COS Naming service as follows:
    String homeName =....
    StockTraderImpl trader =new StockTraderImpl();
    System.out.println("binding obj <" homeName ">...");
    java.util.Hashtable ht =new java.util.Hashtable();
    ht.put("java.naming.factory.initial", args[2]);
    ht.put("java.naming.provider.url", args[3]);
    Context ctx =new InitialContext(ht);
    ctx.rebind(homeName, trader);
    [3] Generate the RMI-IIOP skeletons for the Implementation class,
    rmic -iiop stock.StockTraderImpl
    [4] generate the IDL for the RMI interface,
    rmic -idl stock.StockTraderImpl
    [5] Generate IDL stubs for the CORBA client,
    idlj -v -fclient -emitAll StockTraderImpl.idl
    [6] Write the client to use the IDL-defined stock trader,
    String serverName =args[0];
    String symList =args[1];
    StockClient client =new StockClient();
    System.out.println("init orb...");
    ORB orb =ORB.init(args, null);
    System.out.println("resolve init name service...");
    org.omg.CORBA.Object objRef
    =orb.resolve_initial_references("NameService");
    NamingContext naming =NamingContextHelper.narrow(objRef);
    ... define a naming component etc...
    org.omg.CORBA.Object obj =naming.resolve(...);
    System.out.println("narrow objRef: " obj.getClass() ": " +obj);
    StockTrader trader =StockTraderHelper.narrow(obj);
    [7] Compile all the classes using Java 1.2.2
    [8] start tnameserv (naming service), then the server to register the RMI
    server obj
    [9] Run the CORBA client, passing it the COSNaming service ref name (with
    which the server obj is registered)
    The CORBA client successfully finds the server obj ref in the naming
    service, the operation StockTraderHelper.narrow() fails in the segment
    below, with a class cast exception:
    org.omg.CORBA.Object obj =naming.resolve(...);
    StockTrader trader =StockTraderHelper.narrow(obj);
    The <obj> returned by naming service turns out to be of the type;
    class com.sun.rmi.iiop.CDRInputStream$1
    This is of the same type when stock trader object is registered in a CORBA
    server (as opposed to an RMI server), but works correctly with no casting
    excpetions..
    Any ideas / hints very welcome.
    thanks in advance,
    -hari

    On the contrary... all that is being said is that we needed to provide clearer examples/documentation in the 5.1.0 release. There will be no difference between the product as found in the service pack and the product found in the 5.1.1. That is, the only substantive will be that 5.1.1 will also
    include the examples.
    "<=one way=>" wrote:
    With reference to your and other messages, it appears that one should not
    expect that WLS RMI-IIOP will work in a complex real-life system, at least
    not now. In other words, support for real-life CORBA clients is not an
    option in the current release of WLS.
    TIA
    "Eduardo Ceballos" <[email protected]> wrote in message
    news:[email protected]...
    We currently publish an IDL example, even though the IDL programmingmodel in Java is completely non-functional, in anticipation of the support
    needs for uses who need to use IDL to talk to the Weblogic server,
    generically. This example illustrates the simplest connectivity; it does not
    address how
    to integrate CORBA and EJB, a broad topic, fraught with peril, imo. I'llnote in passing that, to my knowledge, none of the other vendors attempt
    this topic either, a point which is telling if all the less happy to hear.
    For the record then, what is missing from our distribution wrt RMI-IIOPare a RMI-IIOP example, an EJB-IIOP example, an EJB-C++. In this you are
    correct; better examples are forth coming.
    Still, I would not call our RMI-IIOP implementation fragile. I would saythat customers have an understandably hard time accepting that the IDL
    programming model is busted; busted in the sense that there are no C++
    libraries to support the EJB model, and busted in the sense that there is
    simply no
    support in Java for an IDL interface to an EJB. Weblogic has nothing to doit being busted, although we are trying to help our customers deal with it
    in productive ways.
    For the moment, what there is is a RMI (over IIOP) programming model, aninherently Java to Java programming model, and true to that, we accept and
    dispatch IIOP request into RMI server objects. The way I look at it is this:
    it's just a protocol, like HTTP, or JRMP; it's not IDL and it has
    practically nothing to do with CORBA.
    ST wrote:
    Eduardo,
    Can you give us more details about the comment below:
    I fear that as soon as the call to narrow succeeds, the remainingapplication will fail to work correctly because it is too difficult ot
    use an idl client in java to work.It seems to me that Weblogic's RMI-IIOP is a very fragile
    implementation. We
    don't need a "HelloWorld" example, we need a concrete serious example(fully
    tested and seriously documented) that works so that we can get a betteridea
    on how to integrate CORBA and EJB.
    Thanks,
    Said
    "Eduardo Ceballos" <[email protected]> wrote in message
    news:[email protected]...
    Please post request to the news group...
    As I said, you must separate the idl related classes (class files and
    java
    files) from the rmi classes... in the rmic step, you must set a newtarget
    (as you did), emit the java files into that directory (it's not clearyou
    did this), then remove all the rmi class files from the class path... ifyou
    need to compile more classes at that point, copy the java files to theidl
    directly is you must, but you can not share the types in any way.
    I fear that as soon as the call to narrow succeeds, the remainingapplication will fail to work correctly because it is too difficult otuse
    an idl client in java to work.
    Harindra Rajapakshe wrote:
    Hi Eduardo,
    Thanks for the help. That is the way I compiled my CORBA client, by
    separating the IDL-generated stubs from the RMI ones, but still I
    get a
    CORBA.BAD_PARAM upon narrowing the client proxy to the interfacetype.
    Here's what I did;
    + Define the RMI interfaces, in this case a StockTrader interface.
    + Implement RMI interface by extendingjavax.rmi.PortableRemoteObject
    making
    it IIOP compliant
    + Implemnnt an RMI server, and compile using JDK1.2.2
    + use the RMI implementation to generate CORBA idl, using RMI-IIOPplugin
    utility rmic;
    rmic -idl -noValueMethods -always -d idl stock.StockTraderImpl
    + generate Java mappings to the IDL generated above, using RMI-IIOPplugin
    util,
    idlj -v -fclient -emitAll -tf src stocks\StockTrader.idl
    This creates source for the package stock and also
    org.omg.CORBA.*
    package, presumably IIOP type marshalling
    + compile all classes generated above using JDK1.2.2
    + Implement client (CORBA) using the classes generated above, NOTthe
    RMI
    proxies.
    + start RMI server, with stockTrader server obj
    + start tnameserv
    + start CORBA client
    Then the client errors when trying to narrow the obj ref from the
    naming
    service, into the CORBA IDL defined interface using,
    org.omg.CORBA.Object obj =naming.resolve(nn);
    StockTrader trader =StockTraderHelper.narrow(obj); // THIS
    ERRORS..!!!
    throwing a CORBA.BAD_PARAM exception.
    any ideas..?
    Thanks in advance,
    -hari
    ----- Original Message -----
    From: Eduardo Ceballos <[email protected]>
    Newsgroups: weblogic.developer.interest.rmi-iiop
    To: Hari Rajapakshe <[email protected]>
    Sent: Wednesday, July 26, 2000 4:38 AM
    Subject: Re: problem using CORBA clients with RMI/EJBservers..!!!???
    Please see the post on june 26, re Errors compiling... somewherein
    there,
    I suspect, you are referring to the rmi class file when you are
    obliged
    to
    completely segregate these from the idl class files.
    Hari Rajapakshe wrote:
    Hi,
    I have a question on using EJB / or RMI servers with CORBA
    clients
    using
    RMI-IIOP transport, which in theory should work, but in practice
    has
    few
    glitches.
    Basically, I have implemented a very simple server,
    StockTreader,
    which
    looks up for a symbol and returns a 'Stock' object. In the firstexample, I
    simplified the 'Stock' object to be a mere java.lang.String, so
    that
    lookup
    would simply return the 'synbol'.
    Then I have implemented the above, as an RMI-IIOP server (case
    1)
    and a
    CORBA server (case 2) with respective clients, and the pair of
    client-servers work fine as long as they are CORBA-to-CORBA andRMI-to-RMI.
    But the problem arises when I tried using the RMI server (via
    IIOP)
    with
    the
    CORBA client, when the client tries to narrow the object ref
    obtained
    from
    the naming service into the CORBA idl defined type (StockTrader)
    it
    ends
    up
    with a class cast exception.
    This is what I did to achieve the above results:
    [1] Define an RMI interface StockTrader.java (extending
    java.rmi.Remote)
    with the method,
    public String lookup( String symbol) throws RMIException;
    [2] Implement the StorckTrader interface (on a
    PortableRemoteObject
    derived
    class, to make it IIOP compliant), and then the server to
    register
    the
    stock
    trader with COS Naming service as follows:
    String homeName =....
    StockTraderImpl trader =new StockTraderImpl();
    System.out.println("binding obj <" homeName ">...");
    java.util.Hashtable ht =new java.util.Hashtable();
    ht.put("java.naming.factory.initial", args[2]);
    ht.put("java.naming.provider.url", args[3]);
    Context ctx =new InitialContext(ht);
    ctx.rebind(homeName, trader);
    [3] Generate the RMI-IIOP skeletons for the Implementation
    class,
    rmic -iiop stock.StockTraderImpl
    [4] generate the IDL for the RMI interface,
    rmic -idl stock.StockTraderImpl
    [5] Generate IDL stubs for the CORBA client,
    idlj -v -fclient -emitAll StockTraderImpl.idl
    [6] Write the client to use the IDL-defined stock trader,
    String serverName =args[0];
    String symList =args[1];
    StockClient client =new StockClient();
    System.out.println("init orb...");
    ORB orb =ORB.init(args, null);
    System.out.println("resolve init name service...");
    org.omg.CORBA.Object objRef
    =orb.resolve_initial_references("NameService");
    NamingContext naming=NamingContextHelper.narrow(objRef);
    ... define a naming component etc...
    org.omg.CORBA.Object obj =naming.resolve(...);
    System.out.println("narrow objRef: " obj.getClass() ":"
    +obj);
    StockTrader trader =StockTraderHelper.narrow(obj);
    [7] Compile all the classes using Java 1.2.2
    [8] start tnameserv (naming service), then the server to
    register
    the
    RMI
    server obj
    [9] Run the CORBA client, passing it the COSNaming service ref
    name
    (with
    which the server obj is registered)
    The CORBA client successfully finds the server obj ref in the
    naming
    service, the operation StockTraderHelper.narrow() fails in thesegment
    below, with a class cast exception:
    org.omg.CORBA.Object obj =naming.resolve(...);
    StockTrader trader =StockTraderHelper.narrow(obj);
    The <obj> returned by naming service turns out to be of the
    type;
    class com.sun.rmi.iiop.CDRInputStream$1
    This is of the same type when stock trader object is registeredin a
    CORBA
    server (as opposed to an RMI server), but works correctly with
    no
    casting
    excpetions..
    Any ideas / hints very welcome.
    thanks in advance,
    -hari

  • Inqmy resource adapter for SAP with Bea Weblogic Server

              Hi everybody,
              Anybody have tried to use INQMY resource adapter for SAP with Bea weblogic server
              It works well with INQMY server, but with BEA I'm getting a lot of problems creating
              the connections.
              Thanks in advance.
              Xavi.
              

    All,
              Here are the steps we (used for internal testing) had to perform to get
              IN-Q-MY adapter for SAP to work with WebLogic:
              The wli.adapter.inqmy.sapr3.spi package contains extensions to the
              In-Q-My J2EE Connector Architecture classes to overcome some limitations
              in the base implementation classes. To get around these issues, we had
              to extend their R3ManagedConnectionFactory, R3ConnectionManager, and
              R3ConnectionFactory classes.
              * The javax.resource.spi.ManagedConnectionFactory implementation
              does not over-ride the equals and hashCode methods correctly. This
              causes problems with WLS 6.1.
              * There is a bug in their javax.resource.spi.ConnectionManager
              implementation for non-managed uses of the adapter. Consequently, their
              adapter cannot be used in a non-managed scenario.
              * The javax.resource.cci.ConnectionFactory class does not support
              the getConnection() method that does not take any arguments (it throws a
              null pointer exception).
              I am attaching the classes discussed above.
              Cheers,
              Chris
              Torsten Friebe wrote:
              > Hi,
              >
              > does anybody know where to get a trail version - if one exists - of IN-Q-MY
              > application server or the resource adapter?
              >
              > Thanks, regards
              > Torsten
              >
              > "Xavi" <[email protected]> schrieb im Newsbeitrag
              > news:[email protected]...
              >
              >>Hi everybody,
              >>
              >>Anybody have tried to use INQMY resource adapter for SAP with Bea weblogic
              >>
              > server
              >
              >>?
              >>
              >>It works well with INQMY server, but with BEA I'm getting a lot of
              >>
              > problems creating
              >
              >>the connections.
              >>
              >>Thanks in advance.
              >>Xavi.
              >>
              >>
              >
              >
              package wli.adapter.inqmy.sapr3.spi;
              import java.io.Serializable;
              import javax.resource.ResourceException;
              import javax.resource.cci.Connection;
              import javax.resource.cci.ConnectionSpec;
              import javax.resource.spi.ConnectionManager;
              import javax.resource.spi.ConnectionRequestInfo;
              import javax.resource.spi.ManagedConnection;
              import javax.resource.spi.ManagedConnectionFactory;
              import com.inqmy.r3adapter.R3ConnectionSpec;
              import com.inqmy.r3adapter.R3ManagedConnectionFactory;
              * Extends the In-Q-My implementation to allow for getConnection() with no
              * connection spec, i.e. use the default configured connection parameters.
              public class R3ConnectionFactory
              extends com.inqmy.r3adapter.R3ConnectionFactory
              implements com.bea.connector.IProxyMarker {
              private R3ConnectionSpec m_cspec;
              public R3ConnectionFactory(ConnectionManager cm, R3ManagedConnectionFactory mcf)
              throws ResourceException {
              super(cm, mcf);
              String strClientNumber = mcf.getClientNumber();
              if (strClientNumber == null) {
              throw new javax.resource.spi.IllegalStateException("ClientNumber not set for "+mcf);
              String strLanguage = mcf.getLanguage();
              if (strLanguage == null) {
              throw new javax.resource.spi.IllegalStateException("Language not set for "+mcf);
              String strUserName = mcf.getUserName();
              if (strUserName == null) {
              throw new javax.resource.spi.IllegalStateException("UserName not set for "+mcf);
              String strPassword = mcf.getPassword();
              if (strPassword == null) {
              throw new javax.resource.spi.IllegalStateException("Password not set for "+mcf);
              m_cspec = new R3ConnectionSpec(strClientNumber, strLanguage, strUserName, strPassword);
              public Connection getConnection(ConnectionSpec connectionSpec)
              throws ResourceException {
              if (connectionSpec == null) connectionSpec = m_cspec;
              return super.getConnection(connectionSpec);
              package wli.adapter.inqmy.sapr3.spi;
              import java.io.Serializable;
              import javax.resource.ResourceException;
              import javax.resource.spi.ConnectionManager;
              import javax.resource.spi.ConnectionRequestInfo;
              import javax.resource.spi.ManagedConnection;
              import javax.resource.spi.ManagedConnectionFactory;
              * Extends the In-Q-My implementation to over-ride the
              * allocateConnection method to return a CCI connection vs. a ManagedConnection
              public class R3DefaultConnectionManager
              implements ConnectionManager, Serializable {
              public R3DefaultConnectionManager() {}
              public Object
              allocateConnection(ManagedConnectionFactory mcf, ConnectionRequestInfo cri)
              throws ResourceException {
              ManagedConnection mc = mcf.createManagedConnection(null, cri);
              return mc.getConnection(null, cri);
              package wli.adapter.inqmy.sapr3.spi;
              import javax.resource.spi.ConnectionManager;
              import javax.resource.spi.ConnectionRequestInfo;
              import javax.resource.spi.ManagedConnection;
              import javax.security.auth.Subject;
              * Extends the In-Q-My implementation to get around some problems encountered
              * while running on WebLogic:
              * <ul>
              * <li>Must over-ride default implementation of equals and hashCode method</li>
              * <li>Needed to provide my version of the CCI ConnectionFactory</li>
              * <li>Needed to provide my version of the default ConnectionManager for the
              * non-managed scenario use case</li>
              * </ul>
              public class R3ManagedConnectionFactory
              extends com.inqmy.r3adapter.R3ManagedConnectionFactory {
              private int m_iHashCode;
              transient private com.inqmy.r3adapter.R3ConnectionRequestInfo t_cri = null;
              public R3ManagedConnectionFactory() {
              super();
              java.rmi.server.UID uid = new java.rmi.server.UID();
              m_iHashCode = uid.hashCode();
              public Object createConnectionFactory() {
              // need to install our own default connection manager because In-Q-My
              // version causes a ClassCastException in CCI ConnectionFactory
              // getConnection
              return createConnectionFactory(new R3DefaultConnectionManager());
              public ManagedConnection createManagedConnection(Subject subject, ConnectionRequestInfo cri)
              throws javax.resource.ResourceException {
              // need to check for null on the ConnectionRequestInfo object because the
              // In-Q-My R3ManagedConnection ctor does not check for null
              if (cri == null) cri = getDefaultConnectionRequestInfo();
              return new com.inqmy.r3adapter.R3ManagedConnection(this, subject, cri);
              public Object createConnectionFactory(ConnectionManager connectionManager) {
              // need to supply a connection factory that can deal with getConnection
              // that does not take a ConnectionSpec
              try {
              return new R3ConnectionFactory(connectionManager, this);      
              } catch (javax.resource.ResourceException re) {
              re.printStackTrace();
              throw new java.lang.IllegalStateException(re.getMessage());
              com.inqmy.r3adapter.R3ConnectionRequestInfo getDefaultConnectionRequestInfo()
              throws javax.resource.spi.IllegalStateException {
              if (t_cri == null) {
              String strClientNumber = this.getClientNumber();
              if (strClientNumber == null) {
              throw new javax.resource.spi.IllegalStateException("ClientNumber not set for "+this);
              String strLanguage = this.getLanguage();
              if (strLanguage == null) {
              throw new javax.resource.spi.IllegalStateException("Language not set for "+this);
              String strUserName = this.getUserName();
              if (strUserName == null) {
              throw new javax.resource.spi.IllegalStateException("UserName not set for "+this);
              String strPassword = this.getPassword();
              if (strPassword == null) {
              throw new javax.resource.spi.IllegalStateException("Password not set for "+this);
              t_cri = new com.inqmy.r3adapter.R3ConnectionRequestInfo(strClientNumber, strLanguage, strUserName, strPassword);
              return t_cri;
              public boolean equals(Object obj) {
              if (obj == null) return false;
              if (obj == this) return true;
              if (!this.getClass().isInstance(obj)) return false;
              R3ManagedConnectionFactory mcf = (R3ManagedConnectionFactory)obj;
              return compare(getClientNumber(), mcf.getClientNumber()) &&
              compare(getLanguage(), mcf.getLanguage()) &&
              compare(getUserName(), mcf.getUserName()) &&
              compare(getPassword(), mcf.getPassword()) &&
              compare(getServerName(), mcf.getServerName()) &&
              compare(getSystemNumber(), mcf.getSystemNumber());
              protected final boolean compare(final Object obj1, final Object obj2) {
              if (obj1 == obj2) return true;
              if (obj1 != null) {
              return obj1.equals(obj2);
              } else {
              if (obj2 == null) {
              return true;
              } else {
              return false;
              public int hashCode() { return m_iHashCode; }
              

  • Specifying timeout for calls on remote CORBA objects

    When using a remote CORBA object from a Java client, we make use of a periodic heartbeat call to ensure the remote object is still available.
    If the process hosting the remote object dies, we get an exception back immediately after making the call which helps us to know that we need to re-connect.
    If, however, the network goes down (i.e. unplug the machine running the process hosting the remote object from the network), things get a little tricker. At this point, you end up relying on the underlying socket timeouts to control how soon you'll get back an exception.
    We're using both C++/TAO/ACE clients and Java clients. For the C++ clients, we noticed that the timeout value varied significantly based on operating system. For example, on Windows XP Home, it took 75 seconds to get an exception, but on Windows 2000 Pro, it only took 5 seconds.
    The solution for the C++ clients was to make use of a policy override in the ORB, specifying a 5 second timeout. This resulted in a uniform timeout regardless of underlying operating system.
    Now, we have to solve the same problem for the Java clients and I'm wondering if there is a similar mechanism for Sun's built-in ORB. Any ideas?

    here's what I found out. The ORB provided by Sun doesn't appear to provide a policy manager or any other way to specify object request timeouts.
    We've ended up using JacORB instead, which very easily plugs into the JDK. With JacORB, we're able to specify an object request timeout using the code below:
    long objtimeout = 5; // sets a 5 second timeout
    PolicyManager policyManager = PolicyManagerHelper.narrow(
    orb.resolve_initial_references("ORBPolicyManager"));
    Policy p = new org.jacorb.orb.policies.RelativeRoundtripTimeoutPolicy(objtimeout * 10000000);
    policyManager.set_policy_overrides(new Policy[]{ p },
    SetOverrideType.ADD_OVERRIDE);

  • What's wrong with the weblogic.log file?

    Currently we got a problem and don't know what it means -
    our weblogic.log file grows very fast by generating huge amount of logs like:
    ####<Feb 18, 2003 10:29:13 AM CST> <Info> <DGCserver> <awhq7232.whq.ual.com> <ECSserver>
    <ExecuteThread: '13' for queue: 'default'> <> <> <000000> <Tried to renew lease
    on lost reference: '1160'>
    I counted and found that weblogic.log adds in at least 50 such logs per minute
    and its size imcreases about 20M per day. But the application still work normally.
    Could you experts help us on the following questions:
    - Why WebLogic Container generates so many "Info" kind of logs?
    - Could we config the WebLogic Server to avoid such "Info" kind of logs being
    written into weblogic.log file?
    Thank you very much!
    Bill Yuan

    It is harmless - it means that by the time server got to process lease
    renewal message object is already gone.
    You may want to check with support - I think there was a fix which supressed
    this message.
    Bill Yuan <[email protected]> wrote:
    Currently we got a problem and don't know what it means -
    our weblogic.log file grows very fast by generating huge amount of logs like:
    ####<Feb 18, 2003 10:29:13 AM CST> <Info> <DGCserver> <awhq7232.whq.ual.com> <ECSserver>
    <ExecuteThread: '13' for queue: 'default'> <> <> <000000> <Tried to renew lease
    on lost reference: '1160'>
    I counted and found that weblogic.log adds in at least 50 such logs per minute
    and its size imcreases about 20M per day. But the application still work normally.
    Could you experts help us on the following questions:
    - Why WebLogic Container generates so many "Info" kind of logs?
    - Could we config the WebLogic Server to avoid such "Info" kind of logs being
    written into weblogic.log file?
    Thank you very much!
    Bill Yuan--
    Dimitri

  • Problem with the weblogic-maven-plugin

    I am in the process of converting from ant to maven, but I am having a problem with the weblogic-maven-plugin. Has anyone used this plugin successfully? Here is the error I am receiving even though I have a dependency on the xbean.jar in my pom, and it is in my local repo.
    java.lang.NoClassDefFoundError: com/bea/xml/XmlException
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescript
    orManager(AbstractDescriptorLoader2.java:301)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.getDescript
    orBeanFromReader(AbstractDescriptorLoader2.java:749)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.createDescr
    iptorBean(AbstractDescriptorLoader2.java:376)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescrip
    torBeanWithoutPlan(AbstractDescriptorLoader2.java:720)
    at weblogic.application.descriptor.AbstractDescriptorLoader2.loadDescrip
    torBean(AbstractDescriptorLoader2.java:729)
    at weblogic.servlet.internal.WebAppDescriptor.getWebAppBean(WebAppDescri
    ptor.java:134)
    at weblogic.servlet.jsp.JspcInvoker.parseDescriptors(JspcInvoker.java:27
    6)
    at weblogic.servlet.jsp.JspcInvoker.compile(JspcInvoker.java:187)
    at weblogic.application.compiler.AppcUtils.compileWAR(AppcUtils.java:353
    at weblogic.application.compiler.WARCompiler.compile(WARCompiler.java:78
    at weblogic.application.compiler.flow.AppCompilerFlow.compileInput(AppCo
    mpilerFlow.java:118)
    at weblogic.application.compiler.flow.AppCompilerFlow.compile(AppCompile
    rFlow.java:43)
    at weblogic.application.compiler.FlowDriver$FlowStateChange.next(FlowDri
    ver.java:69)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineD
    river.java:26)
    at weblogic.application.compiler.FlowDriver.nextState(FlowDriver.java:36
    at weblogic.application.compiler.FlowDriver.run(FlowDriver.java:26)
    at weblogic.application.compiler.Appc.runBody(Appc.java:163)
    at weblogic.utils.compiler.Tool.run(Tool.java:158)
    at weblogic.utils.compiler.Tool.run(Tool.java:115)
    at weblogic.application.compiler.Appc.main(Appc.java:174)
    at weblogic.appc.main(appc.java:14)
    at jrockit.reflect.InitialMethodInvoker.invoke(Ljava.lang.Object;[Ljava.
    lang.Object;)Ljava.lang.Object;(Unknown Source)
    at java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;
    I)Ljava.lang.Object;(Unknown Source)
    at weblogic.ant.taskdefs.j2ee.CompilerTask.invokeMain(CompilerTask.java:
    290)
    at weblogic.ant.taskdefs.j2ee.Appc.privateExecute(Appc.java:250)
    at weblogic.ant.taskdefs.j2ee.Appc.execute(Appc.java:159)
    at org.codehaus.mojo.weblogic.AppcMojo.execute(AppcMojo.java:180)
    at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugi
    nManager.java:412)
    at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa
    ultLifecycleExecutor.java:534)

    Here is what you need to get the maven-weblogic-plugin appc goal to work:
    <project>
    <build>
    <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>weblogic-maven-plugin</artifactId>
    <version>2.9.0-SNAPSHOT</version>
    <configuration>
    <inputArtifactPath>${basedir}/../../jar/broker.war</inputArtifactPath>
    <verbose>true</verbose>
    </configuration>
    <executions>
    <execution>
    <phase>package</phase>
    <goals>
    <goal>appc</goal>
    </goals>
    <inherited>false</inherited>
    <configuration>
    <verbose>false</verbose>
    <debug>false</debug>
    <projectPackaging>war</projectPackaging>
    </configuration>
    </execution>
    </executions>
    <dependencies>
    <dependency>
    <groupId>com.sun</groupId>
    <artifactId>tools</artifactId>
    <version>1.5.0</version>
    </dependency>
    <dependency>
    <groupId>weblogic</groupId>
    <artifactId>wlxbean</artifactId>
    <version>9.2</version>
    </dependency>
    <dependency>
    <groupId>weblogic</groupId>
    <artifactId>xbean</artifactId>
    <version>9.2</version>
    </dependency>
    <dependency>
    <groupId>weblogic</groupId>
    <artifactId>weblogic-container-binding</artifactId>
    <version>9.2</version>
    </dependency>
    <dependency>
    <groupId>weblogic</groupId>
    <artifactId>wlw-util</artifactId>
    <version>9.2</version>
    </dependency>
    <dependency>
    <groupId>weblogic</groupId>
    <artifactId>javelinx</artifactId>
    <version>9.2</version>
    </dependency>
    <dependency>
    <groupId>weblogic</groupId>
    <artifactId>wlw-langx</artifactId>
    <version>9.2</version>
    </dependency>
    <dependency>
    <groupId>weblogic</groupId>
    <artifactId>bcel</artifactId>
    <version>5.1</version>
    </dependency>
    </plugin>
    </build>
    <dependencies>
    <dependency>
    <groupId>weblogic</groupId>
    <artifactId>wlw-langx</artifactId>
    <version>9.2</version>
    </dependency>
    </dependencies>
    <project>
    You need to install/deploy all of the above dependencies manually into your repo.

  • Is there any object in labview that contains a list of data for the user to select (selection one at a time) or add a new data?

    Is there any object in labview that contains a list of data for the user to select (selection one at a time) or add a new data?

    List and table controls -> listbox..is that what you are thinking of?
    The listbox presents the user with a list of options, and you can set it to only accept one selection at a time...Adding new data to the list can not be done directly by the user but if you make e.g. a text control and a button you can programatically insert new objects described in the text box when the button is pressed...(see example).
    If you need more than one column you have the multicolumn listbox. If you want the users to write new entries directly yu can use a table and read selected cells using it's selection start property to read what cell has been selected.
    MTO
    Attachments:
    Listbox_example.vi ‏34 KB

  • Help!! - Unable to use the Application Module Deployed as Corba Object in Oracle 8i

    I have been able to successfully deploy an Application Module in Oracle 8i but i am un able to get a reference to the Application Module from the database the code used by me is -
    package client;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import java.util.Hashtable;
    import oracle.jbo.*;
    import org.omg.CORBA.*;
    public class Corba8IClient{
    Hashtable env = new Hashtable();
    ApplicationModule appMod = null;
    String theAMDefName = "test/jd/freshJBO.FreshJBOModule";
    public Corba8IClient() {
    System.out.println("Started...");
    // Load the Application Module
    try{
    // Component deployed to Oracle8i CORBA Server.
    // Set up the 8i environment
    System.out.println("Setting up initial Context...");
    env.put(Context.INITIAL_CONTEXT_FACTORY, JboContext.JBO_CONTEXT_FACTORY);
    env.put(JboContext.DEPLOY_PLATFORM, JboContext.PLATFORM_ORACLE8I);
    env.put(Context.SECURITY_PRINCIPAL, "jd");
    env.put(Context.SECURITY_CREDENTIALS, "jd");
    env.put(JboContext.HOST_NAME, "Dev51");
    env.put(JboContext.CONNECTION_PORT, "2481");
    env.put(JboContext.ORACLE_SID, "ORA8I");
    // env.put(JboContext.APPLICATION_PATH, "test/jd/");
    System.out.println("Getting initial Context.");
    Context ic = new InitialContext(env);
    System.out.println("Doing Lookup...");
    ApplicationModuleHome home = (ApplicationModuleHome)ic.lookup(theAMDefName);
    System.out.println("Calling create...");
    // home
    System.out.println("Home Class Name : "+home.getClass().getName());
    oracle.jbo.client.remote.corba.aurora.AuroraApplicationModuleHome am = (oracle.jbo.client.remote.corba.aurora.AuroraApplicationModuleHome)home;
    System.out.println("DefName "+am.getDefName());
    appMod = home.create();
    System.out.println("Setting up connetion from AppMod to database...");
    appMod.getTransaction().connect("jdbc:oracle:thin:jd/jd@dev51:1521:ORA8I");
    }catch(Exception e) {
    e.printStackTrace();
    System.out.println("AppMod full Name "+ appMod.getFullName());
    public ApplicationModule getAppMod(){
    return appMod;
    public static void main(String args[]){
    Corba8IClient c8c = new Corba8IClient();
    after running the output is -
    Started...
    Setting up initial Context...
    Getting initial Context.
    Doing Lookup...
    Diagnostics: Silencing all diagnostic output (use -Djbo.debugoutput=console to see it)
    Calling create...
    Home Class Name : oracle.jbo.client.remote.corba.aurora.AuroraApplicationModuleHome
    DefName null
    oracle.jbo.ApplicationModuleCreateException: JBO-25222: Unable to create application module.
    at oracle.jbo.client.remote.corba.CORBAApplicationModuleHomeImpl.create(CORBAApplicationModuleHomeImpl.java:63)
    at client.Corba8IClient.<init>(Corba8IClient.java:39)
    at client.Corba8IClient.main(Corba8IClient.java:53)
    java.lang.NullPointerException
    at client.Corba8IClient.<init>(Corba8IClient.java:45)
    at client.Corba8IClient.main(Corba8IClient.java:53)
    Corba Object is deployed as -
    ObjectName = /test/jd/freshJBOModule
    Server Class = freshJBO.server.o8.FreshJBOModuleServerO8
    Helper Class = oracle.jbo.common.remote.corba.RemoteApplicationModuleHomeHelper
    The Application Module conatians an entity object and a view object for Dept Table in schema jd(Username -jd, Password -jd).

    Moneesh,
    I believe there is a problem with the way you set the variable theAMDefName. It should be:
    String theAMDefName = freshJBO.FreshJBOModule";
    Then you need to reinstate the line you commented out, to set the application path (but remove the trailing / from the path, as shown):
    env.put(JboContext.APPLICATION_PATH, "test/jd");
    If that doesn't work, and for future reference, I suggest testing your deployed application module from the Business Component Browser (aka the tester) before trying your hand-coded client. Start the tester, select Oracle8i as the middle tier server type, make sure the other information in the connect window is correct, then click Connect.
    Good luck
    Blaise

Maybe you are looking for

  • Firefox won't display toolbars.

    Firefox will only display the one bookmarks toolbar. I've tried options show more than one toolbar, add toolbar. I've tried uninstalling and starting fresh. I've tried downloading 3rd party toolbars like shoutcast radio, and it will show as an add-on

  • Taking Notes In Ibook's PDF files (Ipad)

    Although it is possible to take notes in the Books presented in Ibooks, which is for my purpose a very nice feature this function does not function does not be present in the pdf files. And since 98% of the stuff I use are pdf files (music books) I d

  • Hyperlinks in Navigation Menu?

    I want to have a hyperlink to another website in the navigation menu on my website. How do I do this? I can't seem to find anything.

  • Writng-Reading stream through client-server application

    I am developing a client-server application which is the client sends a sentence to the server and the server will convert the sentence from small letters to all capital letters. The problem is when the sentence send by the client contains special ch

  • 8.1 SP1 cluster license ?

    Hi,           I have free Weblogic 8.1 SP1 developer edition with one year license           (download).           Is this license clustered enabled ? (my HttpProxyServlet doesn't work as           intended - traffic goes only to one server)