13 Replies Latest reply on Mar 3, 2009 7:01 AM by Kevin Conner

    Sending message to Remote ESB

    Vishal Novice

       

       System.setProperty("javax.xml.registry.ConnectionFactoryClass", "org.apache.ws.scout.registry.ConnectionFactoryImpl");
      
       // Set the jndi properties. Note these could be set as properties in web.xml
       System.setProperty(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
       System.setProperty(Context.PROVIDER_URL, "jnp://localhost:1099");
       System.setProperty(Context.URL_PKG_PREFIXES, "org.jboss.naming");
       try{
       Message esbMessage = MessageFactory.getInstance().getMessage();
       Call call = new Call();
       call.setMessageID(new URI(UUID.randomUUID().toString()));
       esbMessage.getHeader().setCall(call);
      
       esbMessage.getBody().add(m);
      
       new ServiceInvoker("MessageRouterService", "RouterListener").deliverAsync(esbMessage);
       }
       catch(Exception ex){
       ex.printStackTrace();
       }


      How to get this code working if ESB is on some other machine ?
      please help

      Regards
      Vishal

        • 1. Re: Sending message to Remote ESB
          Vishal Novice

          this code goes in a servlet based web application
          is it possible to make it configurable ? instead of hard coded ? i.e. even after creating .war i shud be able to modify settings , please advice

          • 2. Re: Sending message to Remote ESB
            Vishal Novice

            Any solutions ?

            • 3. Re: Sending message to Remote ESB
              Vishal Novice

              Hello ?

              • 4. Re: Sending message to Remote ESB
                Kevin Conner Master

                Please, this is a forum and not a replacement for a support contract. Answers given here are done on a best-effort basis.

                What do you have in your jbossesb-properties.xml?

                • 5. Re: Sending message to Remote ESB
                  Vishal Novice

                   

                  <?xml version="1.0" encoding="ISO-8859-1"?>
                  <!--
                   JBoss, Home of Professional Open Source
                   Copyright 2006, JBoss Inc., and others contributors as indicated
                   by the @authors tag. All rights reserved.
                   See the copyright.txt in the distribution for a
                   full listing of individual contributors.
                   This copyrighted material is made available to anyone wishing to use,
                   modify, copy, or redistribute it subject to the terms and conditions
                   of the GNU Lesser General Public License, v. 2.1.
                   This program is distributed in the hope that it will be useful, but WITHOUT A
                   WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
                   PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
                   You should have received a copy of the GNU Lesser General Public License,
                   v.2.1 along with this distribution; if not, write to the Free Software
                   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
                   MA 02110-1301, USA.
                  
                   (C) 2005-2006,
                   @author JBoss Inc.
                  -->
                  <!-- $Id: jbossesb-unittest-properties.xml $ -->
                  <!--
                   These options are described in the JBossESB manual.
                   Defaults are provided here for convenience only.
                  
                   Please read through this file prior to using the system, and consider
                   updating the specified entries.
                  -->
                  <esb
                   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                   xsi:noNamespaceSchemaLocation="jbossesb-1_0.xsd">
                   <properties name="core">
                   <property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
                   <property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
                   <property name="org.jboss.soa.esb.persistence.connection.factory" value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
                   </properties>
                   <properties name="registry">
                   <property name="org.jboss.soa.esb.registry.queryManagerURI"
                   value="jnp://localhost:1099/InquiryService?org.apache.juddi.registry.rmi.Inquiry#inquire"/>
                   <property name="org.jboss.soa.esb.registry.lifeCycleManagerURI"
                   value="jnp://localhost:1099/PublishService?org.apache.juddi.registry.rmi.Publish#publish" />
                   <property name="org.jboss.soa.esb.registry.implementationClass"
                   value="org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl"/>
                   <property name="org.jboss.soa.esb.registry.factoryClass"
                   value="org.apache.ws.scout.registry.ConnectionFactoryImpl"/>
                   <property name="org.jboss.soa.esb.registry.user"
                   value="jbossesb"/>
                   <property name="org.jboss.soa.esb.registry.password"
                   value="password"/>
                   <!-- the following parameter is scout specific to set the type of communication between scout and the UDDI (embedded, rmi, soap) -->
                   <property name="org.jboss.soa.esb.scout.proxy.transportClass"
                   value="org.apache.ws.scout.transport.RMITransport"/>
                   </properties>
                   <properties name="transports" depends="core">
                   <property name="org.jboss.soa.esb.mail.smtp.host" value="localhost"/>
                   <property name="org.jboss.soa.esb.mail.smtp.user" value="jbossesb"/>
                   <property name="org.jboss.soa.esb.mail.smtp.password" value=""/>
                   <property name="org.jboss.soa.esb.mail.smtp.port" value="25"/>
                   </properties>
                   <properties name="connection">
                   <property name="min-pool-size" value="5"/>
                   <property name="max-pool=size" value="10"/>
                   <property name="blocking-timeout-millis" value="5000"/>
                   <property name="abandoned-connection-timeout" value="10000"/>
                   <property name="abandoned-connection-time-interval" value="30000"/>
                   </properties>
                   <properties name="dbstore">
                   <property name="org.jboss.soa.esb.persistence.db.connection.url" value="jdbc:hsqldb:hsql://localhost:9001/"/>
                   <property name="org.jboss.soa.esb.persistence.db.jdbc.driver" value="org.hsqldb.jdbcDriver"/>
                   <property name="org.jboss.soa.esb.persistence.db.user" value="sa"/>
                   <property name="org.jboss.soa.esb.persistence.db.pwd" value=""/>
                   <property name="org.jboss.soa.esb.persistence.db.pool.initial.size" value="2"/>
                   <property name="org.jboss.soa.esb.persistence.db.pool.min.size" value="2"/>
                   <property name="org.jboss.soa.esb.persistence.db.pool.max.size" value="5"/>
                   <!--table managed by pool to test for valid connections - created by pool automatically -->
                   <property name="org.jboss.soa.esb.persistence.db.pool.test.table" value="pooltest"/>
                   <!-- # of milliseconds to timeout waiting for a connection from pool -->
                   <property name="org.jboss.soa.esb.persistence.db.pool.timeout.millis" value="5000"/>
                   </properties>
                   <properties name="messagerouting">
                   <property name="org.jboss.soa.esb.routing.cbrClass" value="org.jboss.internal.soa.esb.services.routing.cbr.JBossRulesRouter"/>
                   </properties>
                  </esb>
                  


                  • 6. Re: Sending message to Remote ESB
                    Vishal Novice

                    this is what i have in jboss-properties.xml
                    and sorry for pinging evryday, actually we are working on a prototype as we are new to this platform and ealier we used to get quicker responses, but any ways i understand that this is not professional support

                    • 7. Re: Sending message to Remote ESB
                      Kevin Conner Master

                      Okay, that would suggest that your web server is on the same host as your ESB server and that you are accessing it over the localhost interface. Is that correct?

                      As for prototypes, I believe you can get a support contract for evaluations for this purpose. If it is your intention to purchase support in the long term then I would suggest you contact someone to see if this can be arranged. You would then have a guaranteed response time for queries/issues.

                      Kev

                      • 8. Re: Sending message to Remote ESB
                        Vishal Novice

                        thanks for suggestion we would certainly go for it , but we need to see really that suffices the purpose or not.

                        Anyways yes we are accesing it over local interface .

                        • 9. Re: Sending message to Remote ESB
                          Kevin Conner Master

                          Sorry, I guess I was confused by

                          "vishal12345" wrote:
                          if ESB is on some other machine


                          • 10. Re: Sending message to Remote ESB
                            Vishal Novice

                            Yes actually now in prototype everything is on same machine but we want to try with ESB on one machine and a web application on another machine, as mention it is a servlet based web application, and it runs on tomcat, how to deploy application and configure it to access remote ESB ?

                            • 11. Re: Sending message to Remote ESB
                              Vishal Novice

                              No currently everything is on same machine
                              but we want to place servlet based web application on different machine and ESB on different machine

                              • 12. Re: Sending message to Remote ESB
                                Kevin Conner Master

                                The configuration of the ESB server has to be such that it is accessible from the remote machine (the one running your WEB application). If you specify the ESB configuration as 'localhost' then this will not be possible.

                                Try running the ESB server using the '-b' flag and specify the name/IP address of your *network* interface.

                                • 13. Re: Sending message to Remote ESB
                                  Kevin Conner Master

                                   

                                  "Kevin.Conner@jboss.com" wrote:
                                  I believe you can get a support contract for evaluations for this purpose.

                                  I have been told that it is possible to obtain an *unsupported* eval of the SOA platform without paying.