4 Replies Latest reply on Sep 27, 2006 3:21 AM by daniel.roeder

    Trailblazer Mail Notification and FileBank

    daniel.roeder

      Hi @All

      I am running the Trailblazer example and at the first glace everything looks fine, BUT there are some problems:

      - There is no Mail-Notification send to the specified EMail adress, although I specified an SMTP-Server (localhost running mercury mail), and the server is working properly -> tested with outlook

      -> Is there a log, where I can search for errors related with the mail sending?

      - I get an single Error line at the "ant runListner" output:

      [java] 10:28:18,563 ERROR [ProcessCreditResponse] error creating Bank request file

      But everything else worked fine as you may see in the following output:

      runListener Output:
      -------------------------------
      
      runListener:
       [echo] Running Loan Broker Listsner
       [java] Going to use default path to config file:conf/LoanBrokerConfig.xml
       [java] Using configFile=conf/LoanBrokerConfig.xml
       [java] 10:26:13,922 INFO [ParamFileRepository] Setting parameter repositor
      y root dir to [C:\JBoss_SOA\jbossesb-4.0Beta1\JBossESB4.0Beta1\docs\samples\trai
      lblazer\bankloanbrokerdemo\.].
       [java] 10:26:20,031 INFO [GpListener] Waiting for command ... timeout=5740
      7 millis
       [java] 10:27:17,469 INFO [GpListener] Reloading parameters _______________
      ______________________________________
       [java] 10:27:18,578 INFO [GpListener] Waiting for command ... timeout=5965
      6 millis
       [java] 10:28:14,438 INFO [ProcessCreditRequest] processObject was called w
      ith <<org.jboss.mq.SpyObjectMessage {
       [java] Header {
       [java] jmsDestination : QUEUE.A
       [java] jmsDeliveryMode : 2
       [java] jmsExpiration : 0
       [java] jmsPriority : 4
       [java] jmsMessageID : ID:10-11585680939061
       [java] jmsTimeStamp : 1158568093906
       [java] jmsCorrelationID: null
       [java] jmsReplyTo : null
       [java] jmsType : null
       [java] jmsRedelivered : false
       [java] jmsProperties : {sample_loanbroker_servicecode=creditRequest, J
      MSXDeliveryCount=1}
       [java] jmsPropReadWrite: false
       [java] msgReadOnly : true
       [java] producerClientId: ID:10
       [java] }
       [java] }>>
       [java] 10:28:16,531 INFO [JmsQueueListener] Waiting for available threads.
      ..
       [java] 10:28:16,531 INFO [ProcessCreditResponse] processObject was called
      with <<org.jboss.mq.SpyObjectMessage {
       [java] Header {
       [java] jmsDestination : QUEUE.A
       [java] jmsDeliveryMode : 2
       [java] jmsExpiration : 0
       [java] jmsPriority : 4
       [java] jmsMessageID : ID:11-11585680965161
       [java] jmsTimeStamp : 1158568096516
       [java] jmsCorrelationID: null
       [java] jmsReplyTo : null
       [java] jmsType : null
       [java] jmsRedelivered : false
       [java] jmsProperties : {sample_loanbroker_servicecode=creditResponse,
      JMSXDeliveryCount=1}
       [java] jmsPropReadWrite: false
       [java] msgReadOnly : true
       [java] producerClientId: ID:11
       [java] }
       [java] }>>
       [java] 10:28:17,063 INFO [ProcessCreditResponse] ProcessCreditResponse --
      Business Object BEFORE Credit Rating is added:
       [java] <Customer __BobjPkg="org.jboss.soa.esb.samples.loanbroker.domain" em
      pName="Wesayso & Co" loanAmt="1000" loanDur="12" salary="50000" snap="105006
      01" ssn="1234567890" stamp="1158568092531" uid="10500601"><person __Class="Perso
      n" fmlyN="Joe Broke"><Laddr List="yes" __Class="Address"><it rol="loan" strLine1
      ="1 Spenditall Str., BrokeTown 99999 DC"/></Laddr><Lemail List="yes" __Class="On
      eValue"><it rol="loan" v="user@localhost"/></Lemail></person></Customer>
       [java] 10:28:17,234 INFO [ProcessCreditResponse] ProcessCreditResponse --
      Business Object AFTER Credit Rating is added:
       [java] <Customer __BobjPkg="org.jboss.soa.esb.samples.loanbroker.domain" em
      pName="Wesayso & Co" loanAmt="1000" loanDur="12" salary="50000" snap="105006
      01" ssn="1234567890" stamp="1158568092531" uid="10500601"><person __Class="Perso
      n" fmlyN="Joe Broke"><Laddr List="yes" __Class="Address"><it rol="loan" strLine1
      ="1 Spenditall Str., BrokeTown 99999 DC"/></Laddr><Lemail List="yes" __Class="On
      eValue"><it rol="loan" v="user@localhost"/></Lemail></person><rating __Class="Cr
      editRating" score="5"/></Customer>
       [java] 10:28:17,313 INFO [LoanBrokerConstants] loanbrokerJndiUrl=localhost
      
       [java] 10:28:17,313 INFO [LoanBrokerConstants] loanbrokerJndiType=jboss
       [java] 10:28:17,313 INFO [LoanBrokerConstants] loanbrokerCreditQueue=queue
      /A
       [java] 10:28:17,313 INFO [LoanBrokerConstants] loanbrokerJmsRequestQueue=q
      ueue/C
       [java] 10:28:17,313 INFO [LoanBrokerConstants] loanbrokerRequestDir=/temp/
      bankInput
       [java] 10:28:17,328 INFO [LoanBrokerConstants] loanbrokerEmailTemplatePath
      =/cygwin/home/kstam/dev1.6/loanbrokerdemo/template
       [java] 10:28:17,328 INFO [LoanBrokerConstants] loanbrokerEmailTemplateFile
      =quotes
       [java] 10:28:18,328 INFO [GpListener] Reloading parameters _______________
      ______________________________________
       [java] 10:28:18,563 ERROR [ProcessCreditResponse] error creating Bank reque
      st file
       [java] 10:28:19,984 INFO [JmsQueueListener] Waiting for available threads.
      ..
       [java] 10:28:19,984 INFO [ProcessBanksJMSResponse] processObject was calle
      d with <<SpyTextMessage {
       [java] Header {
       [java] jmsDestination : QUEUE.D
       [java] jmsDeliveryMode : 2
       [java] jmsExpiration : 0
       [java] jmsPriority : 4
       [java] jmsMessageID : ID:16-11585680998131
       [java] jmsTimeStamp : 1158568099813
       [java] jmsCorrelationID: null
       [java] jmsReplyTo : null
       [java] jmsType : null
       [java] jmsRedelivered : false
       [java] jmsProperties : {JMSXDeliveryCount=1}
       [java] jmsPropReadWrite: false
       [java] msgReadOnly : true
       [java] producerClientId: ID:16
       [java] }
       [java] Body {
       [java] text :<org.jboss.soa.esb.samples.loanbroker.banks.Bank
      QuoteReply>
       [java] <interestRate>8.60</interestRate>
       [java] <quoteId>JMSBasedBank-0</quoteId>
       [java] <errorCode>0</errorCode>
       [java] <customerUID>10500601</customerUID>
       [java] </org.jboss.soa.esb.samples.loanbroker.banks.BankQuoteReply>
       [java] }
       [java] }>>
       [java] 10:28:19,984 INFO [GpListener] Waiting for command ... timeout=5896
      9 millis
       [java] 10:28:20,391 INFO [ProcessBanksJMSResponse] ProcessBanksJMSResponse
       -- Business Object BEFORE Loan Offer is added:
       [java] <Customer __BobjPkg="org.jboss.soa.esb.samples.loanbroker.domain" em
      pName="Wesayso & Co" loanAmt="1000" loanDur="12" salary="50000" snap="105006
      01" ssn="1234567890" stamp="1158568097172" uid="10500601"><person __Class="Perso
      n" fmlyN="Joe Broke"><Laddr List="yes" __Class="Address"><it rol="loan" strLine1
      ="1 Spenditall Str., BrokeTown 99999 DC"/></Laddr><Lemail List="yes" __Class="On
      eValue"><it rol="loan" v="user@localhost"/></Lemail></person><rating __Class="Cr
      editRating" score="5"/></Customer>
       [java] 10:28:20,531 INFO [ProcessBanksJMSResponse] ProcessBanksJMSResponse
       -- Business Object AFTER Loan Offer is added:
       [java] <Customer __BobjPkg="org.jboss.soa.esb.samples.loanbroker.domain" em
      pName="Wesayso & Co" loanAmt="1000" loanDur="12" salary="50000" snap="105006
      01" ssn="1234567890" stamp="1158568097172" uid="10500601"><Loffers List="yes" __
      Class="LoanOffer"><it errorCode="0" interestRate="8.6" quoteId="JMSBasedBank-0"/
      ></Loffers><person __Class="Person" fmlyN="Joe Broke"><Laddr List="yes" __Class=
      "Address"><it rol="loan" strLine1="1 Spenditall Str., BrokeTown 99999 DC"/></Lad
      dr><Lemail List="yes" __Class="OneValue"><it rol="loan" v="user@localhost"/></Le
      mail></person><rating __Class="CreditRating" score="5"/></Customer>
       [java] 10:29:18,984 INFO [GpListener] Reloading parameters _______________
      ______________________________________
      
      
      
      
      File Bank Output:
      -------------------------
      
      runFileBank:
       [echo] Running File Based Bank
       [java] The args attribute is deprecated. Please use nested arg elements.
       [java] ******************************************************
       [java] * DirectoryPoller 1.5 (C) Cristiano Sadun under LGPL *
       [java] ******************************************************
      
      
      
      JMS Bank Output:
      --------------------------
      
      runJMSBank:
       [echo] Running JMS Based Bank
       [echo] Note that your app-server on host: localhost needs to be up and running!
       [java] Starting JMS Bank Listener...
       [java] Provider URL='localhost'.
       [java] Listening to Queue 'queue/C'.
       [java] Responding to Queue 'queue/D'.
       [java] 10:26:39,531 INFO [ManagerJMS] Looking up queue=queue/C
       [java] 10:26:40,234 INFO [ManagerJMS] Looking up connection factory
       [java] 10:26:40,391 INFO [ManagerJMS] Creating connection
       [java] 10:26:40,625 INFO [ManagerJMS] Creating session
       [java] 10:28:18,156 INFO [ManagerJMS] Got message: SpyTextMessage {
       [java] Header {
       [java] jmsDestination : QUEUE.C
       [java] jmsDeliveryMode : 2
       [java] jmsExpiration : 0
       [java] jmsPriority : 4
       [java] jmsMessageID : ID:12-11585680980001
       [java] jmsTimeStamp : 1158568098000
       [java] jmsCorrelationID: null
       [java] jmsReplyTo : null
       [java] jmsType : null
       [java] jmsRedelivered : false
       [java] jmsProperties : {JMSXDeliveryCount=1}
       [java] jmsPropReadWrite: false
       [java] msgReadOnly : true
       [java] producerClientId: ID:12
       [java] }
       [java] Body {
       [java] text :<org.jboss.soa.esb.samples.loanbroker.banks.Bank
      QuoteRequest>
       [java] <ssn>1234567890</ssn>
       [java] <creditScore>0</creditScore>
       [java] <historyLength>0</historyLength>
       [java] <loanAmount>1000</loanAmount>
       [java] <loanTerm>12</loanTerm>
       [java] <customerUID>10500601</customerUID>
       [java] </org.jboss.soa.esb.samples.loanbroker.banks.BankQuoteRequest>
       [java] }
       [java] }
       [java] 10:28:19,547 INFO [Bank] Bank 'JMSBasedBank' received a request for
       SSN=1234567890 for $1000 over 12 months.
       [java] 10:28:19,547 INFO [Bank] Bank 'JMSBasedBank offers SSN=1234567890 B
      ankQuoteReply=[interestRate=8.60, quoteId=JMSBasedBank-0, errorCode=0, customerU
      ID=10500601]
       [java] 10:28:19,656 INFO [ManagerJMS] Looking up connection factory
       [java] 10:28:19,703 INFO [ManagerJMS] Creating connection
       [java] 10:28:19,797 INFO [ManagerJMS] Creating session
      
      



      Daniel Röder

        • 1. Re: Trailblazer Mail Notification and FileBank
          kurtstam

          hi Daniel,

          Can you check the file bank is getting files? I see no log output for that bank at all. It would also be consistent with the error:

          [java] 10:28:18,563 ERROR [ProcessCreditResponse] error creating Bank reque
          st file

          Check to see that the configured directories exist.

          --Kurt

          • 2. Re: Trailblazer Mail Notification and FileBank
            daniel.roeder

            Hi Kurt,

            your right, the file bank doesn't get files at all, but I've checked all directories in bank.properties and LoanBrokerConfig.xml.

            Is it possible, that the Operating System (Windows Server 2003) is blocking the generation of the files? Although, I startet the AS and example with the admin account...

            Do you have other ideas?

            Daniel

            • 3. Re: Trailblazer Mail Notification and FileBank
              kurtstam

              Well the code says:

              //check to see if we can write to destination first
              File tmpDir = new File(LoanBrokerConstants.getInstance().getBankRequestDir());
              if (tmpDir.exists() && tmpDir.canWrite()) {
              writableDir=tmpDir;
              } else {
              m_oLogger.error("error creating Bank request file");
              this.getErrorNotification();
              return;
              }

              so either it doesn't exist and/or it is not writable..

              So first I would double check if the directory to which it wants to write the file exists (make sure there is no little typo). If it does, then look if it is writable by the user that owns jboss java process.

              Hope this helps.

              --Kurt

              • 4. Re: Trailblazer Mail Notification and FileBank
                daniel.roeder

                Hi Kurt,

                thx for your hints, now everything works fine....

                Daniel