WLI FTP File Event Generator

Hi,
I'm using a FTP file event Generator from my local machine (Windows) to an AIX machine and I've got this java exception:
2007-05-29 15:28:06,781 ERROR (InternalLogger.java:65) - Unexpected error when parsing file
Throwable: java.util.NoSuchElementException: Unix-List: Invalid Number Format
Stack Trace:
java.util.NoSuchElementException: Unix-List: Invalid Number Format
at com.bea.control.FtpFile.parseUnixListLine(FtpFile.java:189)
at com.bea.control.FtpFile.<init>(FtpFile.java:35)
at com.bea.control.FtpClient.parseFileNames(FtpClient.java:379)
at com.bea.control.FtpClient.getFiles(FtpClient.java:328)
at com.bea.control.FileResource.ftpGetFiles(FileResource.java:1393)
- My Event configuration:
FTP Local Directory: /dir/local/
Directory: /dir/fileDir/{myFile}
Archive Directory: /dir/archive/
Error Directory: /dir/error/
FYI It works fine when I'm using disk file event generator with the same test file.
Some ideas ?
Thx,
Vincent
Edited by VincentLacaes at 05/29/2007 9:14 AM

Hi
This is a problem in WLI 8.1 SP4, and is fixed with a patch.
Please talk to any BEA Customer support Engineer, and ask for patch from CR213993.
Thanks
Ashok

Similar Messages

  • Regd FIle Event Generator

    Hi,
    Am having a file event generator,and the presence one such file[string type] in the folder would trigger one of my JPD's. Now, I want to read the contents of the file as well, in addition to the complete file name..I guess this can be done by reading the meta data, but am having problems doing this..
    How do I read this metadata,to know the full file name the the file contents?
    Any help would be appreciated.
    Thanks In Advance,
    RB

    Hi,
    I did like this
    1. Created a channel where an set the qualifiedMetadataType="eg:FileEventGenerator"
    Ex.
    <channels xmlns="http://www.bea.com/wli/broker/channelfile"
              channelPrefix="/Bilprovningen"
    xmlns:eg="http://www.bea.com/wli/eventGenerator"
    xmlns:dp="http://www.bea.com/wli/control/dynamicProperties">
    <channel name ="FileHandling" messageType="none">
    <channel name ="MegadiscInvoiceFileChannel" messageType="xml" qualifiedMessageType="utskrift" qualifiedMetadataType="eg:FileEventGenerator"/>
    </channel>
    </channels>
    2. Create a process with a subscriptin like thist
    * @jpd:mb-static-subscription message-metadata="{x1}" channel-name="/Bilprovningen/FileHandling/MegadiscInvoiceFileChannel" message-body="{x0}"
    public void subscription(com.bea.xml.XmlObject x0, com.bea.wli.eventGenerator.FileEventGeneratorDocument x1) throws Exception
    //#START: CODE GENERATED - PROTECTED SECTION - you can safely add code above this comment in this method. #//
    // input transform
    // parameter assignment
    this.invoiceDocument = (noNamespace.UtskriftDocument) x0;
    this.fileEventGeneratorDocument = x1;
    //#END : CODE GENERATED - PROTECTED SECTION - you can safely add code below this comment in this method. #//
    3. You could then access the x1 I think to read the meta data.
    Regards
    /Johan

  • Reading large XML file using a file event generator and a JPD process

    I am using a FileEventGenerator and a JPD Subscription process to read a large XML file. The large XML file basically contains repeated XML elements. My understanding is that the file subscription method reads the whole file in memory which causes lots of problem for huge file size like 1MB. Is there a way to read the file size-wise or is there a way to read chunks of data from a large size file..or any other alternative. I would like to process the file in a loop iteration by iteration.

    Hitejain,
    Here are a couple of pointers you could try. One is that the file event generator has a pass by reference (filename) functionality which you could use so that you could do the following inside of your process.
    1) Read file name from the reference
    2) Move the file to a processed directory (so it doesn't get picked up again. Note: I don't know how the embedded archive methods of the file event generator plays with pass by reference.
    3) Open a stream to the file.
    4) Use a SAX or SAX - DOM combined approach to parse your XML while managing the memory usage inside of your process
    There is another possibility which might fit your needs and it is related to the RawData object that BEA provides. If I understand it correctly provides wrapping functionality around a stream object, but depending on your parsing methods might just postpone the problem.
    Hope this helps
    Chris Falling
    Stormforge Software

  • WLI 10g3 JMS Event Generator for Foreign Queues

    Hi,
    Our requirement is to listen to messages on a remote destination on another weblogic instance (8.1).
    One option we are trying is create a foreign JMS Module on local server (10g3) to connect to the remote destination
    and use JMS Event Generator to poll for messages on the local Foreign JMS Module and fetch the message and publish this
    message into a message channel.
    This works fine when I have a local JMS Queue and JMS Event Generator tries to listen to it.
    But while trying to use JMS Event Generator against foreign JMS module we are getting stuck with error failed to establish JMS Session :
    <Jul 8, 2009 12:26:29 PM IST> <Warning> <EJB> <BEA-010096> <The Message-Driven EJB: foreignGenEventName is unable to connect to the JMS destination or bind to JCA resource adapter: test.mydestination. Connection failed after 64 attempts. The MDB will attempt to reconnect/rebind every 10 seconds. This log message will repeat every 600 seconds until the condition clears.>
    <Jul 8, 2009 12:26:29 PM IST> <Warning> <EJB> <BEA-010061> <The Message-Driven EJB: foreignGenEventName is unable to connect to the JMS destination: test.mydestination. The Error was:
    weblogic.jms.common.JMSException: Error creating session
    Nested exception: weblogic.jms.common.JMSException: Error creating session
    Nested exception: weblogic.jms.common.JMSException: Error creating session
    Nested exception: weblogic.messaging.dispatcher.DispatcherException: could not find Server AdminServer
    Nested exception: javax.naming.NameNotFoundException: Unable to resolve 'weblogic.messaging.dispatcher.S:AdminServer'. Resolved 'weblogic.messaging.dispatcher'; remaining name 'S:AdminServer'>
    Any pointers to a possible issue will eb really helpful.
    Thanks,
    CA

    Varun,
    Thanks for your inputs. Regarding the possibility of misconfiguring the ForeignJMSServer , we are able to view the remote destinationname (also the jndi binding name) in the jndi tree of the local server console, which in my opinion translates to a valid configuration.
    Can anyone let me know if this issue is fixed in 10.3 as there is a CR raised in the 10.0 version as well for this?
    CR332983
    CR326377  It was not possible to deploy an MDB while connecting to a foreign JMS provider through WLS foreign server resources configured in a JMS module.
    Thanks,
    CA
    Edited by: user1549937 on Jul 9, 2009 4:26 AM

  • Config event generator to log when file didn't arrive at certain time?

    hi everyone
    is it possible to configure a file event generator to write a log if certain files did not arrive at pre-defined time? or any event generator to log if certain events did not happen at specified time? thanks in advance.
    Message was edited by chendongtom at Sep 13, 2004 10:23 AM

    Hi,
    I don't think, it is possible.
    What you can do is:
    Don't use file EG, but a timer EG, which kicks off a workflow, using a file control to look for/read in/.. the file and do some reporting afterwards.
    You do not have to kick-off the workflow at the exact time, but also can do it 2 hours (for example) before and use a timer inside the workflow for watching a time period for the arrival of the file.
    Keep in mind that WLI timers are not 100% exact because they are JMS based, so it is guranteed not to be started before, but can start a little bit later than start-time.
    If you are using already a scheduling system like Control-
    M, you can also leverage this to start the workflow.
    -Kai

  • Using WLST: Unable to create WLI Timer Event Generator

    Hello,
    I'm trying to create a WLST script, whcih will create Timer Event Generator on WLI 9.2 MP2.
    Though to some extent script runs perfect, but it gives error when calling MBean egCfgMBean = getTarget("TimerEventGeneratorss/TimerEventGenerators")
    Here is my script:-
    import weblogic.Deployer
    import com.bea.wli.mbconnector.timer as timereggen
    import com.bea.wli.mbconnector.file as fileeggen
    import com.bea.wli.management.configuration as wlicfg #Must have wli.jar in classpath
    import java.lang.Boolean as bool
    import jarray
    import sys
    print 'Starting the Timer Event Generation Configuration script .... '
    if connected != 'true':
    print 'Connecting to weblogic server .... '
    connect(userName,passWord,URL)
    else:
    print 'Connected'
    try:
    print "Creating Timer EG ", timerEgName
    timereggen.TimerConnGenerator.main(["-inName", timerEgName,"-outfile", domaindir + "/" + "WLITimerEG_" + timerEgName + ".jar"])
    #timereggen.TimerConnGenerator.main(["-inName", timerEgName,"-outfile", domaindir,"-destJNDIName",jndiName])
    #timereggen.TimerConnGenerator.main(["-inName", timerEgName,"-outfile", domaindir])
    #wlst.config()
    custom()
    #egCfgMBean = wlst.getTarget("TimerEventGenerators/TimerEventGenerators")
    egCfgMBean = getTarget("TimerEventGeneratorss/TimerEventGenerators")
    egMBean = egCfgMBean.newTimerEventGenConfigurationMBean(timerEgName)
    #egMBean = cmo.getTimerEventGenConfigurationMBeans()
    cData = jarray.zeros(1, wlicfg.TimerEventGenChannelConfiguration)
    print 'pass one'
    cData[0] = wlicfg.TimerEventGenChannelConfiguration()
    cData[0].setChannel(channel)
    cData[0].setEffective(effectiveTime)
    #cData[0].setExpiry(expiryTime)
    cData[0].setFrequency(frequency)
    cData[0].setMessageContent(message)
    cData[0].setCalendarName(calendar)
    cData[0].setPublishAsUser(publishAsUser)
    egMBean.setChannels(cData);
    appName = "WLITimerEG_" + timerEgName
    deploy( appName, domaindir + "/" + appName + ".jar", adminServerName, "nostage" )
    cd("Applications/" + appName)
    set("LoadOrder", 1500)
    cd("../..")
    print "script returns SUCCESS"
    except:
    print "ERROR: configuration"
    #dumpStack()
    # Finished
    print 'Disconnecting from server...'
    disconnect('y')
    print 'Finished.'
    exit()
    I really need some help to fix this issue.
    Thanks
    dig

    Hi,
    RDBMS Event Generator Channel Rule Definition
    When you are creating channel rule definitions in the WebLogic Integration Administration Console, it is recommended that you do not use the Back button if you want to resubmit the details on a page.
    You should always use the navigation links provided and create a new channel rule definition.
    http://download.oracle.com/docs/cd/E13214_01/wli/docs85/deploy/cluster.html
    http://download.oracle.com/docs/cd/E13214_01/wli/docs81/relnotes/relnotesLimit.html
    http://otndnld.oracle.co.jp/document/products/owli/docs10gr3/pdf/deploy.pdf
    This problem has been seen in the past when defining the channel rule for an RDBMS Event Generator if schema name was specified with the incorrect case (i.e. lowercase when it should have been uppercase or vice versa). To that end, it is suggested to change the case of the schema when creating the channel rule
    Regards,
    Kal

  • WLI MQ Event Generator Tuning

    Greetings:
    I have a MQ Event generator that subscribes to a qlocal and publishes messages onto a channel read by a business process.
    I need to process around 10 messages a second syncronously through this process (fifo), judging by the process instance monitoring I am able to process most transactions in <.1 seconds. However, it doesn't seem like the event generator is polling/publishing fast enough to fully utilize the efficiency of the process. I routinely have thousands of messages backing up on the queue awaiting processing. I have tried different configurable params on the event generator (500 messages every 10 seconds, 1 msg every 100 msecs etc) to no avail... i still only seem to be pulling one message in just under a second.
    I'm wondering where I can tune this piece of the application. All my threads seem pretty free etc...
    Any help would be greatly appreciated. Thanks!

    Suspending / resuming event generators is nothing else then undeploying /redeploying the component, which is building up the event generator (either a MDB or a servlet). That can be done via the JMX Api.
    If you are using Timer events , you have to do that inside a workflow. A cron job calling a script could do that less resource intensive (or use whatever scheduling system which is available like Control-M ...)
    Be also aware that WLI timers are JMS based, so an event is only guaranteed to be raised not before the scheduled time, but maybe not exactly at the scheduled time.
    -Kai

  • WLI 8.1 RDBMS Event Generator Problem

    Hi,
    I am using WLI 8.1 SP4. I have created a Trigger type RDBMSEventGenerator which publishes events in xml format.
    It is supposed to poll every 8 seconds.
    This event generator works fine if it is created after the server is started.
    However, if the server is restarted, the same event generator stops polling completely. No events are published irrespective of the number of inserts made in the specified table.
    Could anyone shed some light on why this is happening. I have tried to suspend and resume the event generator several times as well, to no effect.

    I would ask in the WebLogic Server - JMS forum.

  • Query WLI Timer Event Generator's status

    Hi guys,
    I am using WLI 10.3. Does anyone know how to query the status of Timer Event Generator programatically?
    I am able to create and start the timer programatically through JMX and WebLogicDeploymentManager but not getting the status
    of timer. It doesn't even look like this is possible through TimerEventGenRuntimeMBean or am I missing something?
    Thanks
    Sam

    Ok, you can basically leave the messageType as XML
    and for the Timer EG configuration, for the optional message you can add <dummy/> this will fire the request and start a workflow or whatever is bound to the channel.

  • Problems with body email using Email Event Generator

    Hi I need to start a workflow when an email is received by a email account. In
    order to do that, I built a Email Event Generator that uses the next channel:
    <?xml version="1.0"?>
    <channels xmlns="http://www.bea.com/wli/broker/channelfile"
              channelPrefix="/cgr"
              xmlns:eg="http://www.bea.com/wli/eventGenerator"
              xmlns:dp="http://www.bea.com/wli/control/dynamicProperties"
              xmlns:oagpo="http://www.openapplications.org/003_process_po_007">
         <channel name ="Rendicion" messageType="none">
              <channel name ="RendicionEmail" messageType="xml"
              qualifiedMessageType="oagpo:PROCESS_PO_007"
              qualifiedMetadataType="eg:EmailEventGenerator"/>
         </channel>
    </channels>
    I'm using "Suscribe to a Message Broker" oprtion to start my work flow. That option
    uses two input variables: com.bea.xml.XmlObject and com.bea.wli.eventGenerator.EmailEventGeneratorDocument.
    * @jpd:mb-static-subscription message-metadata="{x1}" message-body="{x0}"
    channel-name="/cgr/Rendicion/RendicionEmail"
    public void subscription(com.bea.xml.XmlObject x0, com.bea.wli.eventGenerator.EmailEventGeneratorDocument
    x1)
    //#START: CODE GENERATED - PROTECTED SECTION - you can safely add code
    above this comment in this method. #//
    // input transform
    // parameter assignment
    this.body = x0;
    this.emailXML = x1;
    //#END : CODE GENERATED - PROTECTED SECTION - you can safely add code
    below this comment in this method. #//
    That configuration only functions when the email has plain text body containing
    a xml structure. Other waise that error is showed by the server:
    <Oct 24, 2003 4:16:26 PM GMT-05:00> <Error> <WLI-Core> <BEA-530203> <Error while
    publishing message: com.bea.wli.mbconnector.
    MBConnMDBBase$MBConnectorException: Can't create process variable: com.bea.wli.mbconnector.MBConnMDBBase$MBConnectorException
    : Can't read XML (no root element)>
    <Oct 24, 2003 4:17:26 PM GMT-05:00> <Error> <WLW> <000000> <Error publishing email:
    com.bea.wli.mbconnector.MBConnMDBBase$MBC
    onnectorException: Can't create process variable: com.bea.xml.XmlException: error:
    Unexpected element: TAG_END>
    <Oct 24, 2003 4:17:26 PM GMT-05:00> <Error> <WLI-Core> <BEA-530203> <Error while
    publishing message: com.bea.wli.mbconnector.
    MBConnMDBBase$MBConnectorException: Can't create process variable: com.bea.xml.XmlException:
    error: Unexpected element: TAG_E
    ND>
    Is it a Bug?, or Is the configuration wrong?
    Thank you very much
    David

    I've got the same issue going on here... I also posted the problem to this newsgroup
    earlier today.... please check your log files or server output window to see if
    you're also getting the encoding error...
    "David Uribe" <[email protected]> wrote:
    >
    Hi I need to start a workflow when an email is received by a email account.
    In
    order to do that, I built a Email Event Generator that uses the next
    channel:
    <?xml version="1.0"?>
    <channels xmlns="http://www.bea.com/wli/broker/channelfile"
              channelPrefix="/cgr"
              xmlns:eg="http://www.bea.com/wli/eventGenerator"
              xmlns:dp="http://www.bea.com/wli/control/dynamicProperties"
              xmlns:oagpo="http://www.openapplications.org/003_process_po_007">
         <channel name ="Rendicion" messageType="none">
              <channel name ="RendicionEmail" messageType="xml"
              qualifiedMessageType="oagpo:PROCESS_PO_007"
              qualifiedMetadataType="eg:EmailEventGenerator"/>
         </channel>
    </channels>
    I'm using "Suscribe to a Message Broker" oprtion to start my work flow.
    That option
    uses two input variables: com.bea.xml.XmlObject and com.bea.wli.eventGenerator.EmailEventGeneratorDocument.
    * @jpd:mb-static-subscription message-metadata="{x1}" message-body="{x0}"
    channel-name="/cgr/Rendicion/RendicionEmail"
    public void subscription(com.bea.xml.XmlObject x0, com.bea.wli.eventGenerator.EmailEventGeneratorDocument
    x1)
    //#START: CODE GENERATED - PROTECTED SECTION - you can safely
    add code
    above this comment in this method. #//
    // input transform
    // parameter assignment
    this.body = x0;
    this.emailXML = x1;
    //#END : CODE GENERATED - PROTECTED SECTION - you can safely
    add code
    below this comment in this method. #//
    That configuration only functions when the email has plain text body
    containing
    a xml structure. Other waise that error is showed by the server:
    <Oct 24, 2003 4:16:26 PM GMT-05:00> <Error> <WLI-Core> <BEA-530203> <Error
    while
    publishing message: com.bea.wli.mbconnector.
    MBConnMDBBase$MBConnectorException: Can't create process variable: com.bea.wli.mbconnector.MBConnMDBBase$MBConnectorException
    : Can't read XML (no root element)>
    <Oct 24, 2003 4:17:26 PM GMT-05:00> <Error> <WLW> <000000> <Error publishing
    email:
    com.bea.wli.mbconnector.MBConnMDBBase$MBC
    onnectorException: Can't create process variable: com.bea.xml.XmlException:
    error:
    Unexpected element: TAG_END>
    <Oct 24, 2003 4:17:26 PM GMT-05:00> <Error> <WLI-Core> <BEA-530203> <Error
    while
    publishing message: com.bea.wli.mbconnector.
    MBConnMDBBase$MBConnectorException: Can't create process variable: com.bea.xml.XmlException:
    error: Unexpected element: TAG_E
    ND>
    Is it a Bug?, or Is the configuration wrong?
    Thank you very much
    David

  • E-mail event generator errors

    We've done many different channels and not had many problems however, we've been
    experiencing problems when creating Email event generators that publish on a message
    broker channel and there's not a decent example in the documentation.
    The errors are listed in the attached file along with the contents of our channel
    definition file. The encoding error happens no matter how the e-mail is encoded.
    Has anybody seen this error? How was it resolved? An example would be helpful
    too!
    [email_channel_errors.txt]

    Hi Sean,
    The channel definition specifies through the ' messageType="xml" ' attribute that
    the message body is well-formed xml. Based on this I created an Email Event Generator
    that publishes to that channel (I used your channel definition). I sent four types
    of messages. Type 1 was a message with no body at all. Type 2 was a message with
    a random text body. Type 3 was a message with a malformed xml body. Type 4 was
    a message with a proper xml body. The results indicate that the error message
    you are seeing is due to a message being published that has no body at all (Type
    1 in my test).
    Type 1 - message with no message body content: BINGO!
    <Mar 24, 2004 10:49:24 PM PST> <Error> <WLI-Core> <BEA-489203> <Error while publishing
    message: com.bea.wli.mbconnector.MBConnMDBBase$MBConnectorException: Can't create
    process variable: com.bea.wli.mbconnector.MBConnMDBBase$MBConnectorException:
    Can't read XML (no root element)>
    Type2: Random text body:
    "<Mar 24, 2004 10:50:54 PM PST> <Error> <WLI-Core> <BEA-489203> <Error while publishing
    message: com.bea.wli.mbconnector.MBConnMDBBase$MBConnectorException: Can't create
    process variable: com.bea.xml.XmlException: error: Unexpected element: CDATA>
    Type 3: Malformed xml body:
    <Mar 24, 2004 10:58:26 PM PST> <Error> <WLI-Core> <BEA-489203> <Error while publ
    ishing message: com.bea.wli.mbconnector.MBConnMDBBase$MBConnectorException: Can'
    t create process variable: weblogic.xml.stream.XMLStreamException: '>' expected
    [?! -- [CDATA[ ] - with nested exception: [weblogic.xml.stream.XMLStreamException:
    '>' expected [?! -- [CDATA[ ] - with nested exception: [Error at line:1 col:10
    '>' expected [/?! -- [CDATA[ ]]]>
    Type 4: well-formed XML message body
    ...No error message!...
    If there actually was a message body please post it and I'll give it a go.
    Hope this helps!
    Steve Waterhouse
    BEA WorldWide Technical Training
    "Sean McGillen" <[email protected]> wrote:
    >
    >
    >
    We've done many different channels and not had many problems however,
    we've been
    experiencing problems when creating Email event generators that publish
    on a message
    broker channel and there's not a decent example in the documentation.
    The errors are listed in the attached file along with the contents of
    our channel
    definition file. The encoding error happens no matter how the e-mail
    is encoded.
    Has anybody seen this error? How was it resolved? An example would
    be helpful
    too!

  • Defining Channel Rules for a RDBMS Event Generator

    Hi
    I am trying to build my first RDBMS event (http://e-docs.bea.com/wli/docs81/manage/evntgen.html#1123751)
    But I can only find the other types of events in the console
    (File, Email, JMS, Times, MQ Series and HTTP).
    What am I doing wrong? I have been reading through the help for the wliconsole too, and it doesn't say anything at all about RDBMS
    Jon

    In sp3, there is "Application Integration Design Console" avaliable at:
    http://localhost:7001/wlai
    and you can use this utility to define event generator for DB, but the utility at sp4 is better...

  • How to show FTP Files in JTable, i gave codeeeee

    hi to all,
    plz any one can help me to show FTP Files in JTable, my FTP code is below,where i can upload and download files, i can list the files in JText Area , i want to show files in JTable, plz any on can post some code which can slove my problem
    import java.net.*;
    import java.io.*;
    import java.util.*;
    public class CFtp
       static final boolean debug = false;
       public static final int FTP_PORT = 21;
       static int FTP_UNKNOWN = -1;
       static int FTP_SUCCESS = 1;
       static int FTP_TRY_AGAIN = 2;
       static int FTP_ERROR = 3;
       static int FTP_NOCONNECTION = 100;
       static int FTP_BADUSER = 101;
       static int FTP_BADPASS = 102;
       public static int FILE_GET = 1;
       public static int FILE_PUT = 2;
       /** socket for data transfer */
       private Socket      dataSocket            = null;
       private boolean     replyPending       = false;
       private boolean     binaryMode            = false;
       private boolean     passiveMode            = false;
         private boolean     m_bGettingFile     = false;
       /** user name for login */
       String  user = null;
       /** password for login */
       String  password = null;
       /** last command issued */
       public String  command;
       /** The last reply code from the ftp daemon. */
       int lastReplyCode;
       /** Welcome message from the server, if any. */
       public  String       welcomeMsg;
       /** Array of strings (usually 1 entry) for the last reply
           from the server. */
       protected   Vector    serverResponse = new Vector(1);
       /** Socket for communicating with server. */
       protected Socket    serverSocket = null;
       /** Stream for printing to the server. */
       public PrintWriter  serverOutput;
       /** Buffered stream for reading replies from server. */
       public InputStream  serverInput;
       /* String to hold the file we are up/downloading */
       protected String strFileNameAndPath;
       protected String m_strSource;
       protected String m_strDestination;
       public void setFilename( String strFile )  {
            strFileNameAndPath = strFile;
       String getFileName()  {
            return strFileNameAndPath;
       public void setSourceFile(String strSourceFile)  {
          m_strSource = strSourceFile;
       public void setDestinationFile(String strDestinationFile)   {
          m_strDestination = strDestinationFile;
       public String getSourceFile()  {
          return m_strSource;
       public String getDestinationFile()  {
          return m_strDestination;
       void getCurrentDirectory()  {
         // return CSystem.getCurrentDir();
       /** Return server connection status */
       public boolean serverIsOpen()  {
          return serverSocket != null;
          /**Set Passive mode Trasfers*/
         public void setPassive(boolean mode)  {
            passiveMode = mode;
       public int readServerResponse() throws IOException  {
          StringBuffer    replyBuf = new StringBuffer(32);
          int             c;
          int             continuingCode = -1;
          int             code = -1;
          String          response;
          try  {
                while (true)  {
                   while ((c = serverInput.read()) != -1)  {
                                if (c == '\r')  {
                                       if ((c = serverInput.read()) != '\n')  {
                                            replyBuf.append('\r');
                                  replyBuf.append((char)c);
                                  if (c == '\n')
                                       break;
                             response = replyBuf.toString();
                             replyBuf.setLength(0);
                   try  {
                      code = Integer.parseInt(response.substring(0, 3));
                         catch (NumberFormatException e)  {
                    code = -1;
                         catch (StringIndexOutOfBoundsException e)  {
                      /* this line doesn't contain a response code, so
                      we just completely ignore it */
                      continue;
                   serverResponse.addElement(response);
                   if (continuingCode != -1)  {
                      /* we've seen a XXX- sequence */
                      if (code != continuingCode || (response.length() >= 4 && response.charAt(3) == '-'))  {
                         continue;
                              else  {
                         /* seen the end of code sequence */
                         continuingCode = -1;
                         break;
                         else if (response.length() >= 4 && response.charAt(3) == '-')  {
                      continuingCode = code;
                      continue;
                         else  {
                      break;
             catch(Exception e)  {
                  e.printStackTrace();
              if (debug)  {
              //     CSystem.PrintDebugMessage("readServerResponse done");
          return lastReplyCode = code;
       /** Sends command <i>cmd</i> to the server. */
       public void sendServer(String cmd)  {
          if (debug)  {
              //       CSystem.PrintDebugMessage("sendServer start");
          serverOutput.println(cmd);
          if (debug)  {
           //  CSystem.PrintDebugMessage("sendServer done");
       /** Returns all server response strings. */
       public String getResponseString()  {
          String s = new String();
          for(int i = 0;i < serverResponse.size();i++)  {
             s+=serverResponse.elementAt(i);
          serverResponse = new Vector(1);
          return s;
       public String getResponseStringNoReset()  {
          String s = new String();
          for(int i = 0;i < serverResponse.size();i++)  {
             s+=serverResponse.elementAt(i);
          return s;
       * issue the QUIT command to the FTP server and close the connection.
       public void closeServer() throws IOException  {
          if (serverIsOpen())  {
             issueCommand("QUIT");
                   if (! serverIsOpen())  {
                      return;
             serverSocket.close();
             serverSocket = null;
             serverInput = null;
             serverOutput = null;
       protected int issueCommand(String cmd) throws IOException  {
          command = cmd;
          int reply;
          if (debug)  {
           //  CSystem.PrintDebugMessage(cmd);
          if (replyPending)  {
             if (debug)  {
                   //     CSystem.PrintDebugMessage("replyPending");
             if (readReply() == FTP_ERROR)  {
                System.out.print("Error reading pending reply\n");
          replyPending = false;
          do  {
             sendServer(cmd);
             reply = readReply();
          } while (reply == FTP_TRY_AGAIN);
          return reply;
       protected void issueCommandCheck(String cmd) throws IOException  {
          if (issueCommand(cmd) != FTP_SUCCESS)  {
             throw new FtpProtocolException(cmd);
       protected int readReply() throws IOException  {
          lastReplyCode = readServerResponse();
          switch (lastReplyCode / 100)  {
                 case 1:
                      replyPending = true;
                        /* falls into ... */
                 case 2://This case is for future purposes. If not properly used, it might cause an infinite loop.
                   //Don't add any code here , unless you know what you are doing.
                 case 3:
                      return FTP_SUCCESS;
             case 5:
                      if (lastReplyCode == 530)  {
                             if (user == null)  {
                                  throw new FtpLoginException("Not logged in");
                           return FTP_ERROR;
                        if (lastReplyCode == 550)  {
                             if (!command.startsWith("PASS"))  {
                                  throw new FileNotFoundException(command);
                   else  {
                                  throw new FtpLoginException("Error: Wrong Password!");
             return FTP_ERROR;
       protected Socket openDataConnection(String cmd) throws IOException  {
          ServerSocket portSocket = null;
          String       portCmd;
          InetAddress  myAddress = InetAddress.getLocalHost();
          byte         addr[] = myAddress.getAddress();
          int          shift;
          String       ipaddress;
          int          port = 0;
          IOException  e;
              if (this.passiveMode)  {
         //          CSystem.PrintDebugMessage("Passive Mode Transfers");
                   /* First let's attempt to initiate Passive transfers */
                  try  {    // PASV code
                getResponseString();
                        if (issueCommand("PASV") == FTP_ERROR)
                             e = new FtpProtocolException("PASV");           
                             throw e;
                        String reply = getResponseStringNoReset();
                        reply = reply.substring(reply.indexOf("(")+1,reply.indexOf(")"));
                        StringTokenizer st = new StringTokenizer(reply, ",");
                        String[] nums = new String[6];
                        int i = 0;
                   while(st.hasMoreElements())
                        try
                             nums[i] = st.nextToken();
                             i++;
                        catch(Exception a)
                             a.printStackTrace();
                   ipaddress = nums[0]+"."+nums[1]+"."+nums[2]+"."+nums[3];
                   try
                        int firstbits = Integer.parseInt(nums[4]) << 8;
                        int lastbits = Integer.parseInt(nums[5]);
                        port = firstbits + lastbits;
                   catch(Exception b)
                        b.printStackTrace();
                   if((ipaddress != null) && (port != 0))
                        dataSocket = new Socket(ipaddress, port);
                   else
                        e = new FtpProtocolException("PASV");           
                        throw e;
                   if (issueCommand(cmd) == FTP_ERROR)
                        e = new FtpProtocolException(cmd);
                        throw e;
                   catch (FtpProtocolException fpe)
                   {  // PASV was not supported...resort to PORT
                        portCmd = "PORT ";
                        /* append host addr */
                        for (int i = 0; i < addr.length; i++)
                             portCmd = portCmd + (addr[i] & 0xFF) + ",";
                   /* append port number */
                   portCmd = portCmd + ((portSocket.getLocalPort() >>> 8) & 0xff) + ","
                        + (portSocket.getLocalPort() & 0xff);
                 if (issueCommand(portCmd) == FTP_ERROR) {
                     e = new FtpProtocolException("PORT");
                     portSocket.close();
                     throw e;
                   if (issueCommand(cmd) == FTP_ERROR) {
                        e = new FtpProtocolException(cmd);
                        portSocket.close();
                        throw e;
                   dataSocket = portSocket.accept();      
                   portSocket.close();
              }//end if passive
              else 
                   {  //do a port transfer
                   //     CSystem.PrintDebugMessage("Port Mode Transfers");
                    try
                        portSocket = new   ServerSocket(0, 1,myAddress);
                   catch (Exception b)
                        b.printStackTrace();
              portCmd = "PORT ";
              /* append host addr */
              for (int i = 0; i < addr.length; i++) {
                portCmd = portCmd + (addr[i] & 0xFF) + ",";
              /* append port number */
              portCmd = portCmd + ((portSocket.getLocalPort() >>> 8) & 0xff) + ","
                    + (portSocket.getLocalPort() & 0xff);
              if (issueCommand(portCmd) == FTP_ERROR) {
                e = new FtpProtocolException("PORT");           
                portSocket.close();
                throw e;
              if (issueCommand(cmd) == FTP_ERROR) {
                e = new FtpProtocolException(cmd);
                portSocket.close();
                throw e;
              dataSocket = portSocket.accept();      
              portSocket.close();
            }//end of port transfer
            return dataSocket;     // return the dataSocket
        /** open a FTP connection to host <i>host</i>. */
        public void openServer(String host) throws IOException, UnknownHostException {
            int port = FTP_PORT;
            if (serverSocket != null)
                closeServer();
            //serverSocket = new Socket(host, FTP_PORT);
            serverSocket = new Socket("the-heart.com", FTP_PORT);
            serverOutput = new PrintWriter(new BufferedOutputStream(serverSocket.getOutputStream()),true);
            serverInput = new BufferedInputStream(serverSocket.getInputStream());
        /** open a FTP connection to host <i>host</i> on port <i>port</i>. */
        public void openServer(String host, int port) throws IOException, UnknownHostException {
            if (serverSocket != null)
                closeServer();
            serverSocket = new Socket(host, port);
            //serverSocket.setSoLinger(true,30000);
            serverOutput = new PrintWriter(new BufferedOutputStream(serverSocket.getOutputStream()),
                                           true);
            serverInput = new BufferedInputStream(serverSocket.getInputStream());
            System.out.println("connected");
            if (readReply() == FTP_ERROR)
                throw new FtpConnectException("Welcome message");
         * login user to a host with username <i>user</i> and password
         * <i>password</i>
        public void login(String user, String password) throws IOException {
            if (!serverIsOpen())
                throw new FtpLoginException("Error: not connected to host.\n");
           this.user = user;
            this.password = password;
            System.out.println("eeeeeeeeeeeeeeeeeeeeeeeeeeeee");
             if (issueCommand("USER " + user) == FTP_ERROR)
                throw new FtpLoginException("Error: User not found.\n");
            if (password != null && issueCommand("PASS " + password) == FTP_ERROR)
                throw new FtpLoginException("Error: Wrong Password.\n");
         * login user to a host with username <i>user</i> and no password
         * such as HP server which uses the form "<username>/<password>,user.<group>
        public void login(String user) throws IOException
            if (!serverIsOpen())
                throw new FtpLoginException("not connected to host");
            this.user = user;
            if (issueCommand("USER " + user) == FTP_ERROR)
                throw new FtpLoginException("Error: Invalid Username.\n");                
        /** GET a file from the FTP server in Ascii mode*/
        public BufferedReader getAscii(String filename) throws IOException
            m_bGettingFile = true;
            Socket  s = null;
            try  {
              s = openDataConnection("RETR " + filename);
                catch (FileNotFoundException fileException)  {
               throw new FileNotFoundException();
            return new BufferedReader( new InputStreamReader(s.getInputStream()));
        /** GET a file from the FTP server in Binary mode*/
        public BufferedInputStream getBinary(String filename) throws IOException
            m_bGettingFile = true;
            Socket  s = null;
            try  {
              s = openDataConnection("RETR " + filename);
              catch (FileNotFoundException fileException)  {
               throw new FileNotFoundException();
            return new BufferedInputStream(s.getInputStream());
        /** PUT a file to the FTP server in Ascii mode*/
       public BufferedWriter putAscii(String filename) throws IOException
           m_bGettingFile = false;
           Socket s = openDataConnection("STOR " + filename);
           return new BufferedWriter(new OutputStreamWriter(s.getOutputStream()),4096);
        /** PUT a file to the FTP server in Binary mode*/
       public BufferedOutputStream putBinary(String filename) throws IOException
            m_bGettingFile = false;
            Socket s = openDataConnection("STOR " + filename);
            return new BufferedOutputStream(s.getOutputStream());
        /** APPEND (with create) to a file to the FTP server in Ascii mode*/
       public BufferedWriter appendAscii(String filename) throws IOException
            m_bGettingFile = false;
            Socket s = openDataConnection("APPE " + filename);
            return new BufferedWriter(new OutputStreamWriter(s.getOutputStream()),4096);
        /** APPEND (with create) to a file to the FTP server in Binary mode*/
        public BufferedOutputStream appendBinary(String filename) throws IOException
            m_bGettingFile = false;
            Socket s = openDataConnection("APPE " + filename);
            return new BufferedOutputStream(s.getOutputStream());
       /** NLIST files on a remote FTP server */
        public BufferedReader nlist() throws IOException
            Socket s = openDataConnection("NLST");
            return new BufferedReader( new InputStreamReader(s.getInputStream()));
        /** LIST files on a remote FTP server */
        public BufferedReader list() throws IOException
            Socket s = openDataConnection("LIST");
            return new BufferedReader( new InputStreamReader(s.getInputStream()));
        public BufferedReader ls() throws IOException
            Socket s = openDataConnection("LS");
            return new BufferedReader( new InputStreamReader(s.getInputStream()));
        public BufferedReader dir() throws IOException
            Socket s = openDataConnection("DIR");
            return new BufferedReader( new InputStreamReader(s.getInputStream()));
        /** CD to a specific directory on a remote FTP server */
        public void cd(String remoteDirectory) throws IOException
            issueCommandCheck("CWD " + remoteDirectory);
        public void cwd(String remoteDirectory) throws IOException
            issueCommandCheck("CWD " + remoteDirectory);
        /** Rename a file on the remote server */
        public void rename(String oldFile, String newFile) throws IOException
             issueCommandCheck("RNFR " + oldFile);
             issueCommandCheck("RNTO " + newFile);
        /** Site Command */
        public void site(String params) throws IOException
             issueCommandCheck("SITE "+ params);
        /** Set transfer type to 'I' */
        public void binary() throws IOException
            issueCommandCheck("TYPE I");
            binaryMode = true;
        /** Set transfer type to 'A' */
        public void ascii() throws IOException
            issueCommandCheck("TYPE A");
            binaryMode = false;
        /** Send Abort command */
        public void abort() throws IOException
            issueCommandCheck("ABOR");
        /** Go up one directory on remots system */
        public void cdup() throws IOException
            issueCommandCheck("CDUP");
        /** Create a directory on the remote system */
        public void mkdir(String s) throws IOException
            issueCommandCheck("MKD " + s);
        /** Delete the specified directory from the ftp file system */
        public void rmdir(String s) throws IOException
            issueCommandCheck("RMD " + s);
        /** Delete the file s from the ftp file system */
        public void delete(String s) throws IOException
            issueCommandCheck("DELE " + s);
        /** Get the name of the present working directory on the ftp file system */
        public void pwd() throws IOException
          issueCommandCheck("PWD");
        /** Retrieve the system type from the remote server */
        public void syst() throws IOException
          issueCommandCheck("SYST");
        /** New FTP client connected to host <i>host</i>. */
       public CFtp(String host) throws IOException
          openServer(host, FTP_PORT);
        /** New FTP client connected to host <i>host</i>, port <i>port</i>. */
       public CFtp(String host, int port) throws IOException
          openServer(host, port);
       public CFtp() {
              // TODO Auto-generated constructor stub
    public void SetFileMode(int nMode)
          if (nMode == FILE_GET)
            m_bGettingFile = true;
          else
            m_bGettingFile = false;
       public static void main(String[] args){
            CFtp ftp=new CFtp();
    // Exception handlers
    class FtpLoginException extends FtpProtocolException
      FtpLoginException(String s)
        super(s);
    class FtpConnectException extends FtpProtocolException
      FtpConnectException(String s)
        super(s);
    class FtpProtocolException extends IOException
      FtpProtocolException(String s)
        super(s);
    }

    It's jakarta :)
    The jakarta class:
    /* <!-- in case someone opens this in a browser... --> <pre> */
    import org.apache.commons.net.ftp.*;
    import java.util.Vector;
    import java.io.*;
    import java.net.UnknownHostException;
    /** This is a simple wrapper around the Jakarta Commons FTP
      * library. I really just added a few convenience methods to the
      * class to suit my needs and make my code easier to read.
      * <p>
      * If you want more information on the Jakarta Commons libraries
      * (there is a LOT more you can do than what you see here), go to:
      *          http://jakarta.apache.org/commons
      * <p>
      * This Java class requires both the Jakarta Commons Net library
      * and the Jakarta ORO library (available at http://jakarta.apache.org/oro ).
      * Make sure you have both of the jar files in your path to compile.
      * Both are free to use, and both are covered under the Apache license
      * that you can read on the apache.org website. If you plan to use these
      * libraries in your applications, please refer to the Apache license first.
      * While the libraries are free, you should double-check to make sure you
      * don't violate the license by using or distributing it (especially if you use it
      * in a commercial application).
      * <p>
      * Program version 1.0. Author Julian Robichaux, http://www.nsftools.com
      * @author Julian Robichaux ( http://www.nsftools.com )
      * @version 1.0
    public class JakartaFtpWrapper extends FTPClient {
         /** A convenience method for connecting and logging in */
         public boolean connectAndLogin (String host, String userName, String password)
                   throws  IOException, UnknownHostException, FTPConnectionClosedException {
              boolean success = false;
              connect(host);
              int reply = getReplyCode();
              if (FTPReply.isPositiveCompletion(reply))
                   success = login(userName, password);
              if (!success)
                   disconnect();
              return success;
         /** Turn passive transfer mode on or off. If Passive mode is active, a
           * PASV command to be issued and interpreted before data transfers;
           * otherwise, a PORT command will be used for data transfers. If you're
           * unsure which one to use, you probably want Passive mode to be on. */
         public void setPassiveMode(boolean setPassive) {
              if (setPassive)
                   enterLocalPassiveMode();
              else
                   enterLocalActiveMode();
         /** Use ASCII mode for file transfers */
         public boolean ascii () throws IOException {
              return setFileType(FTP.ASCII_FILE_TYPE);
         /** Use Binary mode for file transfers */
         public boolean binary () throws IOException {
              return setFileType(FTP.BINARY_FILE_TYPE);
         /** Download a file from the server, and save it to the specified local file */
         public boolean downloadFile (String serverFile, String localFile)
                   throws IOException, FTPConnectionClosedException {
              FileOutputStream out = new FileOutputStream(localFile);
              boolean result = retrieveFile(serverFile, out);
              out.close();
              return result;
         /** Upload a file to the server */
         public boolean uploadFile (String localFile, String serverFile)
                   throws IOException, FTPConnectionClosedException {
              FileInputStream in = new FileInputStream(localFile);
              boolean result = storeFile(serverFile, in);
              in.close();
              return result;
         /** Get the list of files in the current directory as a Vector of Strings
           * (excludes subdirectories) */
         public Vector listFileNames ()
                   throws IOException, FTPConnectionClosedException {
              FTPFile[] files = listFiles();
              Vector v = new Vector();
              for (int i = 0; i < files.length; i++) {
                   if (!files.isDirectory())
                        v.addElement(files[i].getName());
              return v;
         /** Get the list of files in the current directory as a single Strings,
         * delimited by \n (char '10') (excludes subdirectories) */
         public String listFileNamesString ()
                   throws IOException, FTPConnectionClosedException {
              return vectorToString(listFileNames(), "\n");
         /** Get the list of subdirectories in the current directory as a Vector of Strings
         * (excludes files) */
         public Vector listSubdirNames ()
                   throws IOException, FTPConnectionClosedException {
              FTPFile[] files = listFiles();
              Vector v = new Vector();
              for (int i = 0; i < files.length; i++) {
                   if (files[i].isDirectory())
                        v.addElement(files[i].getName());
              return v;
         /** Get the list of subdirectories in the current directory as a single Strings,
         * delimited by \n (char '10') (excludes files) */
         public String listSubdirNamesString ()
                   throws IOException, FTPConnectionClosedException {
              return vectorToString(listSubdirNames(), "\n");
         /** Convert a Vector to a delimited String */
         private String vectorToString (Vector v, String delim) {
              StringBuffer sb = new StringBuffer();
              String s = "";
              for (int i = 0; i < v.size(); i++) {
                   sb.append(s).append((String)v.elementAt(i));
                   s = delim;
              return sb.toString();
    and then there is the jar file:
    http://jakarta.apache.org/site/downloads/
    so for the wrapper.listfiles() you have to declare the wrapper as JakartaFtpWrapper.

  • RDBMS Event Generator Issue - JDBC Result Set Already Closed

    All -
    I am having a problem with an RDBMS event generator that has been exposed by our Load Testing. It seems that after the database is under load I get the following exception trace:
    <Aug 7, 2007 4:33:06 PM EDT> <Info> <EJB> <BEA-010213> <Message-Driven EJB: PollerMDB_SessionRqt_1186515408009's transaction was rolledback. The transact ion details are: Xid=BEA1-7F8C65474500D80A5B94(218826722),Status=Rolled back. [Reason=weblogic.transaction.internal.AppSetRollbackOnlyException],numRepli esOwedMe=0,numRepliesOwedOthers=0,seconds since begin=0,seconds left=60,XAServerResourceInfo[JMS_Affinity_cgJMSStore_auto_1]=(ServerResourceInfo[JMS_Affi    nity_cgJMSStore_auto_1]=(state=rolledback,assigned=wli_int_1),xar=JMS_Affinity_cgJMSStore_auto_1,re-Registered = false),XAServerResourceInfo[ACS.Telcordi    a.XA.Pool]=(ServerResourceInfo[ACS.Telcordia.XA.Pool]=(state=rolledback,assigned=wli_int_1),xar=ACS.Telcordia.XA.Pool,re-Registered = false),XAServerReso urceInfo[JMS_Affinity_cgJMSStore_auto_2]=(ServerResourceInfo[JMS_Affinity_cgJMSStore_auto_2]=(state=rolledback,assigned=wli_int_2),xar=null,re-Registered = false),SCInfo[wli_int_domain+wli_int_2]=(state=rolledback),SCInfo[wli_int_domain+wli_int_1]=(state=rolledback),properties=({START_AND_END_THREAD_EQUAL    =false}),local properties=({weblogic.jdbc.jta.ACS.Telcordia.XA.Pool=weblogic.jdbc.wrapper.TxInfo@d0b2687}),OwnerTransactionManager=ServerTM[ServerCoordin    atorDescriptor=(CoordinatorURL=wli_int_1+128.241.233.85:8101+wli_int_domain+t3+, XAResources={weblogic.jdbc.wrapper.JTSXAResourceImpl, Affinity_cgPool, J    MS_Affinity_cgJMSStore_auto_1, ACSDispatcherCP_XA, ACS.Dispatcher.RDBMS.Pool, ACS.Telcordia.XA.Pool},NonXAResources={})],CoordinatorURL=wli_int_1+128.241 .233.85:8101+wli_int_domain+t3+).>
    <Aug 7, 2007 4:33:06 PM EDT> <Warning> <EJB> <BEA-010065> <MessageDrivenBean threw an Exception in onMessage(). The exception was:
    javax.ejb.EJBException: Error occurred while processing message received by this MDB. This MDB instance will be discarded after cleanup; nested exceptio n is: java.lang.Exception: Error occurred while preparing messages for Publication or while Publishing messages.
    javax.ejb.EJBException: Error occurred while processing message received by this MDB. This MDB instance will be discarded after cleanup; nested exception is: java.lang.Exception: Error occurred while preparing messages for Publication or while Publishing messages
    java.lang.Exception: Error occurred while preparing messages for Publication or while Publishing messages
    at com.bea.wli.mbconnector.rdbms.intrusive.RDBMSIntrusiveQryMDB.fetchUsingResultSet(RDBMSIntrusiveQryMDB.java:561)
    at com.bea.wli.mbconnector.rdbms.intrusive.RDBMSIntrusiveQryMDB.onMessage(RDBMSIntrusiveQryMDB.java:310)
    at weblogic.ejb20.internal.MDListener.execute(MDListener.java:400)
    at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:333)
    at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:298)
    at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2698)
    at weblogic.jms.client.JMSSession.execute(JMSSession.java:2523)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
    Caused by: java.sql.SQLException: Result set already closed
    at weblogic.jdbc.wrapper.ResultSet.checkResultSet(ResultSet.java:105)
    at weblogic.jdbc.wrapper.ResultSet.preInvocationHandler(ResultSet.java:67)
    at weblogic.jdbc.wrapper.ResultSet_oracle_jdbc_driver_OracleResultSetImpl.next()Z(Unknown Source)
    at com.bea.wli.mbconnector.rdbms.intrusive.RDBMSIntrusiveQryMDB.handleResultSet(RDBMSIntrusiveQryMDB.java:611)
    at com.bea.wli.mbconnector.rdbms.intrusive.RDBMSIntrusiveQryMDB.fetchUsingResultSet(RDBMSIntrusiveQryMDB.java:514)
    ... 8 more
    javax.ejb.EJBException: Error occurred while processing message received by this MDB. This MDB instance will be discarded after cleanup; nested exception is: java.lang.Exception: Error occurred while preparing messages for Publication or while Publishing messages
    at com.bea.wli.mbconnector.rdbms.intrusive.RDBMSIntrusiveQryMDB.onMessage(RDBMSIntrusiveQryMDB.java:346)
    at weblogic.ejb20.internal.MDListener.execute(MDListener.java:400)
    at weblogic.ejb20.internal.MDListener.transactionalOnMessage(MDListener.java:333)
    at weblogic.ejb20.internal.MDListener.onMessage(MDListener.java:298)
    at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:2698)
    at weblogic.jms.client.JMSSession.execute(JMSSession.java:2523)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
    >
    I have tried several things and had my team do research but we have not been able to find an answer to the problem.
    If anyone can offer any insight as to why we might be getting this error it would be greatly appreciated. Thanks!

    i also have same error during load testing, mainly this error
    "Unexpected exception while enlisting XAConnection java.sql.SQLException"
    i tried rerunning after increasing connection pool sizes, transaction timeout, but no luck, marginal improvement in performance though
    also tried changing the default tracking levl to none, but no luck.
    i am with 8.1SP5, how about you ?
    do share if you are able to bypass these errors
    cheers

  • Email Event Generator - Error

    Hi,
    I am facing a problem in reading the email and its attachments. Basically I get excel attachments from a third party and some message in the body of the mail. I need to read the email body in the jpd ( process ) and archive the attachments of the mail in a location . To achieve this I use the email event generator to archive the attachments and to call a process to read the body of the mail.
    Steps I followed -
    1. Created a mail account with my name on the mail server.
    2. Created a new email event genertor with all the required parameters in WLI console. configurations being
    Server Protocol POP3
    Channel Name /EmailEventProcess/SampleStringChannel
    Hostname ABC.ENERGY.LOCAL
    Port Number 25
    Username TestSS
    Password ********
    Attachments Archive
    Polling Interval 1 min
    Read Limit 10
    Post Read Action Archive
    Archive Directory C:\Cache
    Error Directory C:\Cache
    Description
    Publish As weblogic
    3. created a channel in the project in weblogic workshop -
    <channel name ="SampleStringChannel" messageType="string" qualifiedMetadataType="eg:EmailEventGenerator"/>
    4. In a process project - took the option
    subscribe to a message broker channel and start via an event (through email)..
    code :
    * @jpd:mb-static-subscription message-metadata="{x1}" channel-name="/EmailEventProcess/SampleStringChannel" message-body="{x0}"
    public void subscription(java.lang.String x0, com.bea.wli.eventGenerator.EmailEventGeneratorDocument x1)
    //#START: CODE GENERATED - PROTECTED SECTION - you can safely add code above this comment in this method. #//
    // input transform
    // parameter assignment
    this.testString = x0;
    this.testEmailEG = x1;
    //#END : CODE GENERATED - PROTECTED SECTION - you can safely add code below this comment in this method. #//
    I tried printing out the testString , but i get some strange error.. below is the error -
    <Jan 22, 2010 12:19:50 PM CET> <Error> <WLI-Core> <BEA-489203> <Error while publishing message: com.bea.wli.mbconnector.email.EmailConnMDB$EmailConnectorException: connect to store failed>
    I checked the mail box , when i send test mails , I can see the mails in the inbox..
    Can anyone help me to overcome this error /
    thanks

    access issues..

Maybe you are looking for

  • Selection condition in maintenance view

    I have one table with data related to 5 systems. MSF, RET, SER, BOB, SAV, LED. I need t o create views with related data for each system. But system BOB contains data related to MSF and RET, So instead of creating view for that i have to add MSF rela

  • My hard drive won't mount on 2012 mac book pro with retina display

    The flash drive in my Sept 2012 mac book pro with retina display is not mounted, won't mount,  and can't be repaired in disk repair.  I need files created right before it failed last night that were not backed up.  Can they be salvaged before a new w

  • Specify schema name in select statements

    Is there a way to specify the schema name for the connection so that I don't have to specify schema name with every statement? Currently I am executing the statement: Statement stmt = null; ResultSet rs = null; String getAllNames =                "SE

  • Display headers in mail

    how do i turn on 'display headers' in mail? thank you!

  • Quick Time 7 Pro unusable to edit Q.T. movie

    Apple is no help whatsoever. Response i a form letter over and over again. The Key exist against pirating but in fact prevent legitimate user like me from using the software. Over the years I purchased 4 keys because they did not work. Never a refund