|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
WMB SendMailPlugin node used to send via SMTP |
« View previous topic :: View next topic » |
Author |
Message
|
w3Partnership |
Posted: Tue Jan 22, 2008 9:37 am Post subject: WMB SendMailPlugin node used to send via SMTP |
|
|
Newbie
Joined: 22 Jan 2008 Posts: 2
|
I'm using the SMTP version of the IA07 SendMailPlugIn node and struggling to get it to work!! Can anyone spot the obvious glaring error that has eluded me so far?
I've installed the SMTP debug version and I'm running it under WMB v6.0.5 on AIX.
The message input to the node has a Properties & MQMD header and the mesage is contained within the XML domain with structure:
<Message>
<From> ... </From>
<To> ... </To>
<Subject> ... </Subject>
<Content> ... </Content> (Content passed as an XML.CDataSection)
</Message>
On the node itself, I've included values for the SMTPServer & the SMTPServerPort only. I've left the "Name of the From person" & "Full name of the From person" empty. Including values in these blank fields make no difference to the outcome.
I've pasted the debug output (/tmp/DebugSMTPClient.txt) below (I've amended the true email address used to 'email_address' to protect my customer's identity!) which all appears to be fine:
------------------------------------------------------------------------------------
===============================
= The current date and time are: Tue Jan 22 15:47:02 2008
===============================
-> SmtpInit
<-- SmtpInit
===============================
= The current date and time are: Tue Jan 22 15:47:02 2008
===============================
--> SmtpSendMessage
--- MailFrom <email_address >
--- MailTo <email_address>
--- MailCc <>
--- MailBcc <>
--- MailSubject[0..79] <Alert>
--- Maildate <858846176 -803183000 -803228728:-710336888:00 GMT>
--- MailBody[0..79] <REF. NUMBER: 12345
CONFIRMATION REQUIRED:
Please use Back Office Cen>
--- MIMEinfo == NULL
--- Rfc822_X_Header
-- Connect to the SMTP server
-> TelnetGetReply
<- TelnetGetReply, rc = 220
-> SmtpGetRcInt, rc = 220
- String 220 Code 0
<- SmtpGetRc, rc = 0
-- Connect to the SMTP server OK
===> Sends the HELO command
-> SmtpSendCommand, Buffer = HELO huxd0104, BufferSize = 13
<- SmtpSendCommand, rc = 0
-> TelnetGetReply
<- TelnetGetReply, rc = 250
-> SmtpGetRcInt, rc = 250
- String 250 Code 0
<- SmtpGetRc, rc = 0
===> Sends the MAILFROM command
-> SmtpSend, Buffer = MAIL FROM:<email_address >, BufferSize = 44
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
-> TelnetGetReply
<- TelnetGetReply, rc = 250
-> SmtpGetRcInt, rc = 250
- String 250 Code 0
<- SmtpGetRc, rc = 0
===> Sends the RCPT TO command
-> SmtpSendRcpt, pTo = <email_address>
-- Memory allocated
-- Constructs the beginning of the command
-- Get the first recipient from the To line
-- Skip spaces and affect To the next recipient
-> SmtpSend, Buffer = RCPT TO: email_address, BufferSize = 40
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
-> TelnetGetReply
<- TelnetGetReply, rc = 250
-> SmtpGetRcInt, rc = 250
- String 250 Code 0
<- SmtpGetRc, rc = 0
<- SmtpSendRcpt, rc = 0
===> Sends the DATA command
-> SmtpSendCommand, Buffer = DATA, BufferSize = 4
<- SmtpSendCommand, rc = 0
-> TelnetGetReply
<- TelnetGetReply, rc = 354
-> SmtpGetRcInt, rc = 354
- String 354 Code 0
<- SmtpGetRc, rc = 0
===> Sends the SUBJECT field
-> SmtpSend, Buffer = Subject: Alert, BufferSize = 28
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
===> Sends the TO field
-> SmtpSendTo
-> SmtpSend, Buffer = To:email_address, BufferSize = 34
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
<- SmtpSendTo, rc = 0
===> Sends the CC field
===> Sends the FROM field
-> SmtpSend, Buffer = From: email_address , BufferSize = 38
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0<- SmtpSend, rc = 0
===> Sends the MESSAGE_ID field
===> Sends the PRIORITY field
--> SmtpSendPriority, Priority = 3
<-- SmtpSendPriority
-> SmtpSend, Buffer = Priority: Normal, BufferSize = 16
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
===> Sends the IMPORTANCE field
--> SmtpSendImportance, Importance = 3
<-- SmtpSendImportance
-> SmtpSend, Buffer = Importance: Normal, BufferSize = 18
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
===> Sends the REPLY-TO field
-> SmtpSend, Buffer = Reply-to: email_address , BufferSize = 42
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
===> Sends the X- fields
-> SmtpSend, Buffer = X-Priority: 3 (Normal), BufferSize = 22
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
-> SmtpSend, Buffer = , BufferSize = 0
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
===> Sends the BODY field (plain)
-> SmtpSend, Buffer = REF. NUMBER: 12345
CONFIRMATION REQUIRED:
Please use Back Office Cen, BufferSize = 818
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
<- SmtpSend, rc = 0
===> Sends the ENDOFDATA command
-> SmtpSendCommand, Buffer =
., BufferSize = 3
<- SmtpSendCommand, rc = 0
-> TelnetGetReply
<- TelnetGetReply, rc = 250
-> SmtpGetRcInt, rc = 250
- String 250 Code 0
<- SmtpGetRc, rc = 0
===> Sends the QUIT command
-> SmtpSendCommand, Buffer = QUIT, BufferSize = 4
<- SmtpSendCommand, rc = 0
-> TelnetGetReply
<- TelnetGetReply, rc = 221
-> SmtpGetRcInt, rc = 221
- String 221 Code 0
<- SmtpGetRc, rc = 0
--> SmtpCleanUp
===============================
= The current date and time are: Tue Jan 22 15:47:02 2008
===============================
<-- SmtpCleanUp, rc = 0
===============================
= The current date and time are: Tue Jan 22 15:47:02 2008
===============================
-> SmtpInit
<-- SmtpInit
===============================
= The current date and time are: Tue Jan 22 15:47:02 2008
===============================
--> SmtpSendMessage
--- MailFrom <>
--- MailTo <>
--- MailCc <>
--- MailBcc <>
--- MailSubject[0..79] <>
--- Maildate <22 Jan 2008 15:47:02 GMT>
--- MailBody[0..79] <>
--- MIMEinfo == NULL
--- Rfc822_X_Header
-- Connect to the SMTP server
-> TelnetGetReply
<- TelnetGetReply, rc = 220
-> SmtpGetRcInt, rc = 220
- String 220 Code 0
<- SmtpGetRc, rc = 0
-- Connect to the SMTP server OK
===> Sends the HELO command
-> SmtpSendCommand, Buffer = HELO huxd0104, BufferSize = 13
<- SmtpSendCommand, rc = 0
-> TelnetGetReply
<- TelnetGetReply, rc = 250
-> SmtpGetRcInt, rc = 250
- String 250 Code 0
<- SmtpGetRc, rc = 0
===> Sends the MAILFROM command
===> Sends the DATE field
-> SmtpSend, Buffer = Date: 858846176 -803183000 -803228728:-710336888:00 GMT, BufferSize = 59
--> BufferSize <= MAXIMUM_TOTAL_LENGTH_TEXT_LINE - 2
------------------------------------------------------------------------------------
A further debug file was also produced (/tmp/SendMailPlugInDebug.txt) and the output within that seems to be OK (i.e. rc=0 and the occasional rc=1 for attributes not entered - e.g. userTraceLevel, etc).
However, my broker usertrace gives me some errors (below) and the email does not get sent (!!!):
------------------------------------------------------------------------------------
2008-01-22 15:47:02.293240 6683 UserTrace BIP4149E: User-defined extension input parameter failed debug validation check.
Input parameter 2 passed into function ''cniFirstChild'' is a NULL pointer.
Correct user-defined extension implementation accordingly.
2008-01-22 15:47:02.293251 6683 UserTrace BIP4149E: User-defined extension input parameter failed debug validation check.
Input parameter 2 passed into function ''cpiElementName'' is a NULL pointer.
Correct user-defined extension implementation accordingly.
2008-01-22 15:47:02.293274 6683 UserTrace BIP4149E: User-defined extension input parameter failed debug validation check.
Input parameter 2 passed into function ''cniFirstChild'' is a NULL pointer.
Correct user-defined extension implementation accordingly.
------------------------------------------------------------------------------------ |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Jan 22, 2008 9:49 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Ask your mail administrator for assistance. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
jharringa |
Posted: Wed Jan 23, 2008 2:34 pm Post subject: |
|
|
Acolyte
Joined: 24 Aug 2007 Posts: 70
|
I believe that the following:
Code: |
<Message>
<From> ... </From>
<To> ... </To>
<Subject> ... </Subject>
<Content> ... </Content> (Content passed as an XML.CDataSection)
</Message>
|
should probably be:
Code: |
<Message>
<From> ... </From>
<To> ... </To>
<Subject> ... </Subject>
<Body><Line>{your CData content}</Line></Body>
</Message> |
|
|
Back to top |
|
 |
w3Partnership |
Posted: Mon Jan 28, 2008 4:18 am Post subject: |
|
|
Newbie
Joined: 22 Jan 2008 Posts: 2
|
For everyone's benefit, the first reply was probably closest to the mark. It appears that the error was simply that I'd been provided within a mis-spelt email address to test against! Doh!
Once that was corrected, the email magically appeared.
However, as well as receiving the email, I still get the following errors within the usertrace:
------------------------------------------------------------------------------------
2008-01-22 15:47:02.293240 6683 UserTrace BIP4149E: User-defined extension input parameter failed debug validation check.
Input parameter 2 passed into function ''cniFirstChild'' is a NULL pointer.
Correct user-defined extension implementation accordingly.
2008-01-22 15:47:02.293251 6683 UserTrace BIP4149E: User-defined extension input parameter failed debug validation check.
Input parameter 2 passed into function ''cpiElementName'' is a NULL pointer.
Correct user-defined extension implementation accordingly.
2008-01-22 15:47:02.293274 6683 UserTrace BIP4149E: User-defined extension input parameter failed debug validation check.
Input parameter 2 passed into function ''cniFirstChild'' is a NULL pointer.
Correct user-defined extension implementation accordingly.
------------------------------------------------------------------------------------
.....which indicates that the finalisation part of the SMTP node code is in error - i.e. the email has been sent successfully but the code tidy-up is in error. I'll be adding a few debug statements when time permits to determine what the error is exactly. |
|
Back to top |
|
 |
jefflowrey |
Posted: Mon Jan 28, 2008 7:40 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
I did actually read the SMTP debug stack, and see that the mail server had successfully accepted the message...
I'd tend to discourage use of the debug version, unless you really really need to trace things at this high a level of detail. For most cases, you don't - you just need to have a cooperative mail admin who can tell you what happens to the message if the SMTP node doesn't throw an error that you can see. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|