Looking up JMS administered objects in a rich client

We have JMQ running as a broker. Using 'jmqjmsadm.sh' we added a Topic and a
TopicConnectionFactory, using
../jmqjmsadm.sh t theLogTopic logTopic
../jmqjmsadm.sh tf providerTopicFactory TopicConnectionFactory
and also set up the proxy using
../jmspadm theTopicFactory providerTopicFactory
Everything seemed to work, and all three objects show up under
SOFTWARE\iPlanet\Application Server\6.0\JMSObjects in kregedit. This is
depicted in the attached JPG.
We also have an application client running in the ACC, and this client needs
to access these JMS objects. My understanding is that iPlanet does NOT
support resource references for JMS, so even though this is a rich client my
subsequent expectation is that we would access the connection factory using
TopicConnectionFactory conFactory = (TopicConnectionFactory) jndi.lookup(
"java:comp/env/jms/providerTopicFactory" );
This does not work, unfortunately, resulting in a
javax.naming.NameNotFoundException, on the lookup on
"jms/providerTopicFactory". I have, however, also tried looking up
"java:comp/env/providerTopicFactory", and
"java:comp/env/jms/TopicConnectionFactory", and none of them are successful.
I might add thgat an earlier JNDI lookup on an env-entry is successful, so
the CosNaming is set up OK, as near as I can tell.
The app client is definitely running in the ACC; it is not a standalone.
This seems to be a combination (JMS plus rich client running in the ACC)
that is poorly documented. I am wondering if anyone has any suggestions.
TIA.
Regards,
Arved Sandstrom
[Attachment jmsobjects.jpg, see below]

Hi Arved,
Can you try to set the initial context factory using:
Properties prop = System.getProperties();
prop.put("java.naming.factory.initial","com.netscape.server.jms.RefFSContextFactory");
prop.put("java.naming.provider.url","/");
and then do a lookup using:
ctx.lookup("jms/providerTopicFactory");
Regards,
Durga
Arved Sandstrom wrote:
We have JMQ running as a broker. Using 'jmqjmsadm.sh' we added a Topic and a
TopicConnectionFactory, using
./jmqjmsadm.sh t theLogTopic logTopic
./jmqjmsadm.sh tf providerTopicFactory TopicConnectionFactory
and also set up the proxy using
./jmspadm theTopicFactory providerTopicFactory
Everything seemed to work, and all three objects show up under
SOFTWARE\iPlanet\Application Server\6.0\JMSObjects in kregedit. This is
depicted in the attached JPG.
We also have an application client running in the ACC, and this client needs
to access these JMS objects. My understanding is that iPlanet does NOT
support resource references for JMS, so even though this is a rich client my
subsequent expectation is that we would access the connection factory using
TopicConnectionFactory conFactory = (TopicConnectionFactory) jndi.lookup(
"java:comp/env/jms/providerTopicFactory" );
This does not work, unfortunately, resulting in a
javax.naming.NameNotFoundException, on the lookup on
"jms/providerTopicFactory". I have, however, also tried looking up
"java:comp/env/providerTopicFactory", and
"java:comp/env/jms/TopicConnectionFactory", and none of them are successful.
I might add thgat an earlier JNDI lookup on an env-entry is successful, so
the CosNaming is set up OK, as near as I can tell.
The app client is definitely running in the ACC; it is not a standalone.
This seems to be a combination (JMS plus rich client running in the ACC)
that is poorly documented. I am wondering if anyone has any suggestions.
TIA.
Regards,
Arved Sandstrom
[Image]--
Durgaprasad Swaminathan
iPlanet E-Commerce Solutions, A Sun-Netscape Alliance
+65 - 337 3658 (DID)
+65 - 337 4688 (Fax)

Similar Messages

  • Creating jms administered object

    I am getting the message "Object Not Found Code - 32" while creating jndi naming service under jms administered object stores. Can anyone help me how to create an object.

    Looks like the entry your trying to add doesn't have a parent... I suggest that you check the DN (Context) of the entry you're trying to add and/or that the parent entry exist in your directory.
    Regards,
    Ludovic.

  • How to find the hidden objects in Webi Rich client  report 4.0 sp 04 ?

    Hi,
    How to find the hidden objects in Webi Rich client  report  at BI 4.0 sp 04 ?
    Best Regards,
    ASR

    Hi Sai,
    Go to Report Element Tab-->There you have a Tab Cell Behaviors.
    When you flip between 'With Data' and 'Structure Only' under 'Design' Tab,you can see the some cells will be hide/Un hide behavior,if hiding of cells applied.
    Select that cell and then Under 'Cell Behaviors'-->'Hide' Tab-->and choose Show Option.
    Regards,
    Venkat P

  • JMS Administered Objects

    Why are "ConnectionFactory" and "Destination" administered objects?
    What does the spec mean by saying that they are administered objects?
    What are the advantages of having them as administered objects? (and not any other objects in the spec)?
    What are the difficulties in maintaining them programatically? Why should some one admin them? What does the admin do?
    Besides the above, I have another Question:
    What makes anyone use multiple Sessions in one Connection, instead of using a Single Session to send messages? Why is there a Concept of a Session? Can't it just be Connection?
    Can someone throw light on (any of) these?
    Thanks,
    Kalyan.

    hi.
    all applications that have a JMS Connection in order to send and receive messages, should have their Connection objects hook to the same server (the JMS provider). It is therefore appropriate that they all use a ConnectionFactory that has the same characteristics and metadata. The easiest way to do it, is to register the ConnectionFactory somewhere in the system that's well-known - e.g. a JNDI service. It doesn't make sense to have all clients configured individually. This is why you administer a ConnectionFactory.
    Destination objects are also common to all clients. everyone who uses your JMS provider should have access to the correct list of destinations. again - it just doesn't make sense to configure each client separately, so you register all public Destination objects in the same service (again - JNDI is a good choice).
    All other objects are application-specific. a Connection/Session/MessageConsumer (and so on) object is valid only for the application that created it. there's no need to register it elsewhere, because no one else should have access to those objects. Basically, you could say, that only objects that every client should access - are to be administered.
    Multiple Session objects on a Connection are used when you want to separate parts of the application. a Session means that you are serializing the delivery of messages. if you have multiple threads in your app, you might want to give each sending thread a different Session object, because otherwise - they will all block on the communal Session.
    additionally - you should not use one Session object for both consuming and producing of messages, so -if your app wishes to do both, it should have at least two Session objects.
    moreover - when consuming messages, you do not use the same Session object for synchronous and a-synchronous consuming. so - if you need a consumer to block until it gets a message, and you need another consumer to wake up as a listener when a message arrives - you will need two Session objects.
    Last but not least, suppose you have two producers in your application. one of them needs to use a transacted Session, and the other one does not - (or you need different acknowledge modes) - you must use multiple Session objects.
    hope that helps.
    Nimo.

  • Creating the JMS Administered Objects

    Hi.. All
    I am new to JMS..... I have written two simple programs which are given in the examples SimpleQueueSender.java and SimpleQueueReciever.java..
    I successfully Compiled the programs..
    But When I am trying to run the SimpleQueueSender I am getting the following error...
    D:\jms>java SimpleQueueSender MyQueue 3
    Queue name is MyQueue
    BEFORE
    AFTER
    JNDI API lookup failed:javax.naming.NameNotFoundException: Unable to resolve MyQueue. Resolved: '
    ' Unresolved:'MyQueue' ; remaining name ''
    The structure of config.xml is as follows....
    <JMSConnectionFactory JNDIName="SeshuConnectionFactory"
    Name="MyQueue" Targets="myserver"/>
    I am using Weblogic 6.1 Server. I suppose the problem should be in creating the MyQueue JMS Administration Object...
    Please help me out in solving this problem..
    The portion of the code where exactly the exception is rising is as follows....
    System.out.println("BEFORE");
    queueConnectionFactory =(QueueConnectionFactory)jndiContext.lookup("SeshuConnectionFactory");
    System.out.println("AFTER");
    queue =(Queue)jndiContext.lookup(queueName);

    have you configured your queues, topic, connection factory in weblogic through its admin console?
    Ashwani

  • What is meant by administered objects in jms

    what is meant by administered objects in jms..
    and
    is this Analogy true : JMS Provider like JDBC Driver
    or JMS Provider like DBMS(IBM MQ)
    what that provider is.....

    In my previous job I was developer/administrator etc for the was environment and although I don't know if there are any hard and fast rules to what administered objects are I classed anything that get created in WAS as adminstered objects so that would be the likes of:
    JMS Queues
    JMS Queue Connection Factories
    Datasources
    J2C Aliases
    JDBC Providers e.g. Sybase driver
    In the case of WAS 6+ then that would also include your service integration buses, foreign MQ buses etc.
    Basically anything that you can script using wsadmin
    Hope that helps.
    Matt

  • Sun One App Server 8.1,Sun One Message Q3.6,administered objects in LDAP

    Hi,
    Has anyone tried hosting an MDB on Sun One App Server 8.1 listening to a queue on Sun One Message Queue 3.6 through administered objects in directory server...? It looks quite straight forward but somehow it doesn't seems to work. Any idea if Sun one app server supports this type of architecture...?
    Regards,
    Pritesh

    Hi,
    Even I didn't see any obvious reason why it shouldn't work untill I found that Sun One App Server 8.1 does not support external JNDI lookup to Sun MQ 3.6 through administered objects. However, it is possible using a newly released generic resource adapter for JMS 1.5 RC1. I am still fighiting on it and let you know if it works.
    I was getting an error "JMS resource can not be created" during deployment time.
    Regards,
    Pritesh Thakor

  • What are administered objects

    Examples of administered objects are apparently JMS destinations and connection factories, but what exactly are they?
    Can anything "managed" by the container be called an administered object (e.g. EJBs, DataSources, etc)?
    resource-ref is used to indicate "resource manager connection factory" objects, while resource-env-ref is used to indicate "admistered objects associated with resources", though that doesn't clear up much...
    Could anybody please clarify?
    Thanks.

    Administered object is a term used by the connector specification to describe global resources exposed by resource adapters and other backend systems. JMS destinations and connection factories are two good examples.
    Regarding the Java EE private component environment (java:comp/env),
    the original intent was that resource-refs be used to refer to
    factory objects such as JMS Connection Factories and Datasources, whereas resource-env-refs
    refer to opaque resources such as JMS Destinations. In retrospect it
    didn't help that much to make that distinction and it has caused a lot of confusion.
    The annotations in Java EE 5 help abstract a lot of this by allowing @Resource
    to be used for anything that would map to either a resource-ref or resource-env-ref.
    Things like ejb references, web service references, and persistence unit/context references
    each have special enough behavior that they are assigned their own unique environment
    types, so those would not be refered to as administered objects.
    --ken                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Create administered object

    Hi,
    I have a stand alone application which connect to an EJB server, so I would like to use the JMS provider in my application but I don't want to use my JMS provider for the creation of TopicFactory and Topic (and then use a lookup).
    Is there a portable way to do this?
    The only way I found is like that (with sun MQ) :
         com.sun.messaging.TopicConnectionFactory myConnFactory = new com.sun.messaging.TopicConnectionFactory();
             try {
                  myConnFactory.setProperty("imqAddressList", "mq://localhost:7676/jms");
             } catch (JMSException je) {
             TopicConnection connection = myConnFactory.createTopicConnection();
             TopicSession pubSession = connection.createTopicSession(false, Session.AUTO_ACKNOWLEDGE);
            TopicSession subSession = connection.createTopicSession(false, Session.AUTO_ACKNOWLEDGE);
            com.sun.messaging.Topic myTopic = new com.sun.messaging.Topic();
            try {
                 myTopic.setProperty("imqDestinationName", "new_topic_name");
            } catch (JMSException je) {
            TopicPublisher publisher = pubSession.createPublisher((javax.jms.Topic)myTopic);
            TopicSubscriber subscriber = subSession.createSubscriber((javax.jms.Topic)myTopic);         
            // Set a JMS message listener
            subscriber.setMessageListener(this);
            // Intialize the Chat application
            set(connection, pubSession, subSession, publisher, username);
            // Start the JMS connection; allows messages to be delivered
            connection.start();

    Several JMS implementations support JNDI lookups in pretty much any context. JNDI lookups are the recommended method of creating administered objects and they are for the most part portable (if by portable, you mean portable from JMS provider to JMS provider).
    If you must create concrete objects, the only JMS agnostic method would be reflection and that would be pretty ugly.
    Dwayne
    ============
    http://dropboxmq.sourceforge.net

  • JMS Destination object not found

    Hi everyone,
    I have a weird problem with SunONE Message Queue 3.
    I have a queue and a connection factory defined (using the SunONE Application Server 7 Admin Console) as well as a physical resource.
    I can verify their existance using asadmin....
    asadmin>list-jmsdest -u admin server1
    queue_1 queue {}
    asadmin>list-jms-resources -u admin server1
    jms/newqueue_1
    jms/newQCF_1
    When I attempt to deploy a message driven EJB I get the following error
    SEVERE ( 1484): javax.naming.InvalidNameException: JMS Destination object not found:`jms/newqueue_1`
    This question has already been asked on the App Server board here http://swforum.sun.com/jive/thread.jspa?threadID=15517&tstart=0 (that post is nine months old btw).
    I am posting this here in the hope that someone more familiar with MQ3 may have an idea of how to help us.
    Thanks in advance.

    I have now solved this problem. External JNDI resources are required in the AppServer.
    They can be created with the following commands:
    asadmin>create-jndi-resource jndilookupname jms/newQCF_1 resourcetype javax.jms.QueueConnectionFactory factoryclass com.sun.jndi.fscontext.RefFSContextFactory enabled=true --property java.naming.provider.url=file\:///c\:/java/mqjndi:java.naming.security.authentication=none newQCF_1
    asadmin>create-jndi-resource jndilookupname jms/queue_1 resourcetype javax.jms.Queue factoryclass com.sun.jndi.fscontext.RefFSContextFactory enabled=true --property java.naming.provider.url=file\:///c\:/java/mqjndi newqueue_1
    Both these commands assume that the file system context is being used however the LDAP commands are similar (just more properties).
    This step, which seems vital, is missing from the AppServer documentation (in fact it specifically states that this step is not necessary). The irony is that I found the answer in the IBM MQ documentation!

  • Evaluating kodo for a thin rich client

    Hi
    We're evaluating our options for persistence on a project. We need a thin
    rich client - thin in terms of logic/smarts and rich in terms of
    UI/usability (swing/swt etc. not html). Before spending time to build a
    prototype, we have some questions.
    1. When using the remote persistence manager, how easy/hard is it to
    traverse relationships i.e. should the traversal be bounded by a
    transaction? We want to avoid transactions on the client side.
    2. We'll be looking to use horizontal mapping for most of our persistence
    capable objects.
    3. What are the issues to look out for when using attach/detach over a
    remote pm
    Thanks
    Srini

    1. When using the remote persistence manager, how easy/hard is it to
    traverse relationships i.e. should the traversal be bounded by a
    transaction? We want to avoid transactions on the client side.Relation traversal is completely transparent. You don't need a transaction.
    2. We'll be looking to use horizontal mapping for most of our persistence
    capable objects.Why?
    3. What are the issues to look out for when using attach/detach over a
    remote pmIf you're using remote PMs, then why would you use attach/detach? There
    are very few reasons that I can think of. Generally, you'd want to use
    one feature or the other. Not both.

  • Problem with Web Intelligence Rich Client - text is cropped

    Hello
    I have the following problem when I use Web Intelligence Rich Client.
    When I try to display a fairly long field (4000+ characters), the text gets cropped at the end of the page and at the start of the next one.
    Here's a link to what it looks like :
    [http://img269.imageshack.us/img269/2016/textro.jpg]
    How can I fix that ?
    TIA !
    Vincent

    Try to choos different fonts and check if the cropping problem is resolved, or try to decrease the font size. This is problem is related to the properties of the report page layout, not with business objects. so please check the settings and u can resolve the problem
    Regards,
    Deepak

  • Umlauts not displayed in WebI Rich Client

    Hello everyone,
    We have a problem with one user machine using Web Intelligence Rich Client 2-tier mode.
    Data umlauts (õäöüšž) are turned to symbols and the query result are incorrect.
    It's interesting, because metadata umlauts are displayed correctly. For example, the user sees umlauts header of reports.
    The problem have to be in one machine, because when same user log in to another computer then umlauts are displayed correctly.
    Environment details:
    XI3.1 Edge Professional with DI
    Build Number: 601
    Product Version: 12.3.0.601
    Data Source: DWH
    Database Name: Oracle Database 11g Release 11.2.0.1.0 - 64bit ...
    Auditing: Enabled 
    Client details:
    Windows 7 32-bit
    Oracle client 11g
    Rich Client version 12.3.0
    NLS_LANG = ESTONIAN_ESTONIA.BLT8MSWIN1257
    Do anyone have experience with this kind of problem?
    Thanks in advance,
    Jana

    Hi Jana,
    normaly this type of problem happens when the NLS_LANG variable is not set or is incorrectly set.
    have a look at this KBA https://service.sap.com/sap/support/notes/1260474
    if you can't read it hte resolution is the following
    Resolution
    Ensure
    that the Database is set to UTF8
    NLS_LANG
    to be set to UTF8 on the database server
    If you are
    importing the database from another server, make sure that the initial Database
    is set to UTF8 too before doing the import/export.
    Once this is done proceed as usual to set up Unicode for your
    system >>>>Make sure a backup is done before making the
    changes<<<<
    Installed International Support features Microsoft Office Setup
    Modify NLS_LANG on the client machine to be UTF8
    (HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_OracClient10G_home)
    Ensure that Unicode parameter in oracle.prm and oracle.sbo files
    are set to UTF8 (found in <install directory>\Business Objects\Business
    Objects Enterprise 115\win32_x86\DataAccess\ConnectionServer\oracle)
    Ensure Unicode parameter in cs.cfg file is set to UTF8 (found in
    <install directory>\Business Objects\Business Objects Enterprise
    115\win32_x86\DataAccess\ConnectionServer)
    In Designer parameter make sure that UNICODE_STRING parameter is
    set to Yes
    Cheers
    Simone

  • Webi rich Client Drivers Issue

    Hi,
    I am facing errors when i try to run the query in WEBI Rich client whereas when I run these queries directly on the server I am not getting any error messages. Based on the error messages, I think I might need to install some drivers. Can anyone tell me the drivers that we need for Oracle & Microsoft?
    When i try to run a Query on the webi rich Client for the Universe that was connecting to oracle, i am getting the following error message:
    Below shown are the errors that I am facing with 2 universes which are connecting to SQL Server.
    1. When i try to run a query for the Universe that is built on Cube, I am getting the following error:
    2. When i try to run a query for the Universe that is built on Datamart, I am getting the following error:
    Please help me out here if anyone knows the solution.
    Thanks & Regards.

    Hi,
    short answer to your question : it depends on what your consuming.
    you need to find out the exact version of these sources (i.e. ORA 11.1? MSAS 2008 SP2? etc)
    then identify the middleware from that vendor which is supported by our SAP applications. For that, you need to cross-reference the 'product availability matrix ' (pam)  for your specific Service Pack of the BO BIPlatform . www.service.sap.com/pam
    then, you need to look at the connectivity of your universes to see which driver they are using (ODBC, JDBC or OLEDB for example)  and then  download the right file from the DB vendor's site. 
    then make sure that you install 32 bit MW on your client tools machine, and 64 bit on your server.
    You will then need to administer the ODBC data source names (DSN) everywhere .
    Good luck!
    regards,
    H

  • Rich Client Login fails from Infoview but works fine if opened from desktop

    Hi Friends,
    When i open WebI Rich Client from my infoview (By changing the preferrance settings in Infoview), it returns an error as "Login Fails" , but if i open the webI Rich Client from my Start->Programs->Business Objects XI 3.0->WebI Rich Client , it works fine. i am not sure why invoking rich client from infoview fails, but the same works fine, if opened directly from the desktop. I have only one user "administrator" Created with no password in the Enterprise.
    Configuration:
    Platform:             Windows Xp
    Type:                  Vertical Installation  (All the servers and Presentation Layer in a single Box)
    Boxi Version:     BOXI 3.0
    Authentication:   BO Enterprise.
    Any help in the regard is appreciated.
    Regards,
    Ram kumar G
    Edited by: Ramkumar Govindasamy on Aug 11, 2009 9:58 AM

    Hi,
    Windows XP is not officially supported for a BOBJ server installation. Can you consider installing BO on a Windows Server machine?
    Have a look prior to the installation at the Support Platforms document for BO XI 3.0. You can find this here:
    [http://service.sap.com/bosap-support]
    Regards,
    Stratos

Maybe you are looking for