|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
HTTPRequest Node |
« View previous topic :: View next topic » |
Author |
Message
|
mlafleur |
Posted: Wed May 10, 2006 6:43 am Post subject: HTTPRequest Node |
|
|
Acolyte
Joined: 19 Feb 2004 Posts: 73
|
Can the HTTPRequest node be used to create a message containing the content of a given URL which is not a web service? |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed May 10, 2006 6:44 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Did you try it?
Did it fail?
Did you get an error? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
mlafleur |
Posted: Wed May 10, 2006 6:54 am Post subject: |
|
|
Acolyte
Joined: 19 Feb 2004 Posts: 73
|
Yes, I have tried it and I do not get the content back. I get the HTTPResponseHeader and then the HTTPResponseHeader again where I would expect to get the content.
On the node properties,
"Request message in location tree" is set to Environment.Variables.Request which is set to an empty string
"Response message location in tree" is set to OutputRoot.BLOB
here is the partial trace:
(0x01000000):HTTPResponseHeader = (
(0x03000000):X-Original-HTTP-Status-Line = 'HTTP/1.1 200 OK'
(0x03000000):X-Original-HTTP-Status-Code = 200
(0x03000000):Server = 'Netscape-Enterprise/6.0'
(0x03000000):Date = 'Wed, 10 May 2006 14:29:58 GMT'
(0x03000000):Content-type = 'text/plain'
(0x03000000):Set-cookie = 'CFID=3523948;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFTOKEN=52465311;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFCLIENT_FPD=;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFGLOBALS=urltoken%3DCFID%23%3D3523948%26CFTOKEN%23%3D52465311%23lastvisit%3D%7Bts%20%272006%2D05%2D10%2010%3A29%3A58%27%7D%23timecreated%3D%7Bts%20%272006%2D05%2D10%2010%3A29%3A58%27%7D%23hitcount%3D2%23cftoken%3D52465311%23cfid%3D3523948%23;expires=Fri, 02-May-2036 14:09:12 GMT;path=/'
(0x03000000):Content-Language = 'en-US'
(0x03000000):Connection = 'close'
)
(0x01000000):BLOB = (
(0x03000000):X-Original-HTTP-Status-Line = 'HTTP/1.1 200 OK'
(0x03000000):X-Original-HTTP-Status-Code = 200
(0x03000000):Server = 'Netscape-Enterprise/6.0'
(0x03000000):Date = 'Wed, 10 May 2006 14:29:58 GMT'
(0x03000000):Content-type = 'text/plain'
(0x03000000):Set-cookie = 'CFID=3523948;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFTOKEN=52465311;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFCLIENT_FPD=;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFGLOBALS=urltoken%3DCFID%23%3D3523948%26CFTOKEN%23%3D52465311%23lastvisit%3D%7Bts%20%272006%2D05%2D10%2010%3A29%3A58%27%7D%23timecreated%3D%7Bts%20%272006%2D05%2D10%2010%3A29%3A58%27%7D%23hitcount%3D2%23cftoken%3D52465311%23cfid%3D3523948%23;expires=Fri, 02-May-2036 14:09:12 GMT;path=/'
(0x03000000):Content-Language = 'en-US'
(0x03000000):Connection = 'close'
) |
|
Back to top |
|
 |
mgk |
Posted: Wed May 10, 2006 7:43 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
What are the setting on the RequestNode? (all of them
regards, _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
mlafleur |
Posted: Wed May 10, 2006 8:37 am Post subject: |
|
|
Acolyte
Joined: 19 Feb 2004 Posts: 73
|
BASIC TAB
URL https://www.fededirectory.frb.org/updatesForACH.cfm?sinceDate=05/08/2006
Timeout
120
Proxy
I am using a proxy it is set to hostname:port
Redirection
unchecked
HTTP Version
1.1
Enable Keep Alive
checked
ADVANCED TAB
Use whole input message
unchecked
Request message location
Environment.Variables.Request
Replace input message with web service response
unchecked
Response message location in tree
OutputRoot.BLOB
Generate default HTTP headers from input
checked
DEFAULT TAB
Message Domain
BLOB
The rest are the default values. SSL is configured. I have the cert in my cacerts. |
|
Back to top |
|
 |
mgk |
Posted: Wed May 10, 2006 1:56 pm Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
I must still be missing something, can you please post the whole section of the output from the trace node in full please.
Regards, _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
mlafleur |
Posted: Wed May 10, 2006 2:20 pm Post subject: |
|
|
Acolyte
Joined: 19 Feb 2004 Posts: 73
|
This is a trace coming out of the HttpRequest node. I do subsequent processing in a Compute Node to remove the HttpResponseHeader, etc.
BIP4060I: Data '''(
(0x01000000):Properties = (
(0x03000000):MessageSet = ''
(0x03000000):MessageType = ''
(0x03000000):MessageFormat = ''
(0x03000000):Encoding = 546
(0x03000000):CodedCharSetId = 437
(0x03000000):Transactional = TRUE
(0x03000000):Persistence = FALSE
(0x03000000):CreationTime = GMTTIMESTAMP '2006-05-10 14:29:57.220'
(0x03000000):ExpirationTime = -1
(0x03000000):Priority = 0
(0x03000000):ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x03000000):ReplyProtocol = 'MQ'
(0x03000000):Topic = NULL
(0x03000000):ContentType = ''
)
(0x01000000):HTTPResponseHeader = (
(0x03000000):X-Original-HTTP-Status-Line = 'HTTP/1.1 200 OK'
(0x03000000):X-Original-HTTP-Status-Code = 200
(0x03000000):Server = 'Netscape-Enterprise/6.0'
(0x03000000):Date = 'Wed, 10 May 2006 14:29:58 GMT'
(0x03000000):Content-type = 'text/plain'
(0x03000000):Set-cookie = 'CFID=3523948;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFTOKEN=52465311;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFCLIENT_FPD=;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFGLOBALS=urltoken%3DCFID%23%3D3523948%26CFTOKEN%23%3D52465311%23lastvisit%3D%7Bts%20%272006%2D05%2D10%2010%3A29%3A58%27%7D%23timecreated%3D%7Bts%20%272006%2D05%2D10%2010%3A29%3A58%27%7D%23hitcount%3D2%23cftoken%3D52465311%23cfid%3D3523948%23;expires=Fri, 02-May-2036 14:09:12 GMT;path=/'
(0x03000000):Content-Language = 'en-US'
(0x03000000):Connection = 'close'
)
(0x01000000):MQMD = (
(0x03000000):SourceQueue = 'MARC'
(0x03000000):Transactional = TRUE
(0x03000000):Encoding = 546
(0x03000000):CodedCharSetId = 437
(0x03000000):Format = ' '
(0x03000000):Version = 2
(0x03000000):Report = 0
(0x03000000):MsgType = 8
(0x03000000):Expiry = -1
(0x03000000):Feedback = 0
(0x03000000):Priority = 0
(0x03000000):Persistence = 0
(0x03000000):MsgId = X'414d512044455642524b36202020202080e1614420001f0a'
(0x03000000):CorrelId = X'000000000000000000000000000000000000000000000000'
(0x03000000):BackoutCount = 0
(0x03000000):ReplyToQ = ' '
(0x03000000):ReplyToQMgr = 'DEVBRK6 '
(0x03000000):UserIdentifier = 'laflema.dev '
(0x03000000):AccountingToken = X'160105150000002fd5ec6da1f4046243170a32dd08000000000000000000000b'
(0x03000000):ApplIdentityData = ' '
(0x03000000):PutApplType = 11
(0x03000000):PutApplName = 'C:\util\RFHUtil\rfhutil.exe '
(0x03000000):PutDate = DATE '2006-05-10'
(0x03000000):PutTime = GMTTIME '14:29:57.220'
(0x03000000):ApplOriginData = ' '
(0x03000000):GroupId = X'000000000000000000000000000000000000000000000000'
(0x03000000):MsgSeqNumber = 1
(0x03000000):Offset = 0
(0x03000000):MsgFlags = 0
(0x03000000):OriginalLength = -1
)
(0x01000010):XML = (
(0x05000018):XML = (
(0x06000011): = '1.0'
)
(0x06000002): = '
'
(0x01000000):KeyValue = (
(0x02000000): = '
'
(0x01000000):UIC_CD = (
(0x02000000): = 'WPMRA1'
)
(0x02000000): = '
'
(0x01000000):AUDC_PARA_NR = (
(0x02000000): = '102A'
)
(0x02000000): = '
'
(0x01000000):AUDC_LINE_NR = (
(0x02000000): = '01'
)
(0x02000000): = '
'
)
)
(0x01000000):BLOB = (
(0x03000000):X-Original-HTTP-Status-Line = 'HTTP/1.1 200 OK'
(0x03000000):X-Original-HTTP-Status-Code = 200
(0x03000000):Server = 'Netscape-Enterprise/6.0'
(0x03000000):Date = 'Wed, 10 May 2006 14:29:58 GMT'
(0x03000000):Content-type = 'text/plain'
(0x03000000):Set-cookie = 'CFID=3523948;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFTOKEN=52465311;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFCLIENT_FPD=;expires=Fri, 02-May-2036 14:09:12 GMT;path=/, CFGLOBALS=urltoken%3DCFID%23%3D3523948%26CFTOKEN%23%3D52465311%23lastvisit%3D%7Bts%20%272006%2D05%2D10%2010%3A29%3A58%27%7D%23timecreated%3D%7Bts%20%272006%2D05%2D10%2010%3A29%3A58%27%7D%23hitcount%3D2%23cftoken%3D52465311%23cfid%3D3523948%23;expires=Fri, 02-May-2036 14:09:12 GMT;path=/'
(0x03000000):Content-Language = 'en-US'
(0x03000000):Connection = 'close'
)
)
(
(0x01000000):Variables = (
(0x03000000):Request = ''
)
)
''' from trace node ''TEST_HTTP.Trace1''.
The trace node ''TEST_HTTP.Trace1'' has output the specified trace data.
This is an information message provided by the message flow designer. The user response will be determined by the local environment.
------------------------------------------------------------------------------------
And here is one with XML coming in and coming out (I changed the Response Message location in tree and the Message Domain properties):
BIP4060I: Data '''(
(0x01000000):Properties = (
(0x03000000):MessageSet = ''
(0x03000000):MessageType = ''
(0x03000000):MessageFormat = ''
(0x03000000):Encoding = 546
(0x03000000):CodedCharSetId = 437
(0x03000000):Transactional = TRUE
(0x03000000):Persistence = FALSE
(0x03000000):CreationTime = GMTTIMESTAMP '2006-05-10 22:12:17.390'
(0x03000000):ExpirationTime = -1
(0x03000000):Priority = 0
(0x03000000):ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x03000000):ReplyProtocol = 'MQ'
(0x03000000):Topic = NULL
(0x03000000):ContentType = ''
)
(0x01000000):HTTPResponseHeader = (
(0x03000000):X-Original-HTTP-Status-Line = 'HTTP/1.1 200 OK'
(0x03000000):X-Original-HTTP-Status-Code = 200
(0x03000000):Server = 'Netscape-Enterprise/6.0'
(0x03000000):Date = 'Wed, 10 May 2006 22:12:18 GMT'
(0x03000000):Content-type = 'text/plain'
(0x03000000):Set-cookie = 'CFID=3527556;expires=Fri, 02-May-2036 22:11:39 GMT;path=/, CFTOKEN=60444930;expires=Fri, 02-May-2036 22:11:39 GMT;path=/, CFCLIENT_FPD=;expires=Fri, 02-May-2036 22:11:39 GMT;path=/, CFGLOBALS=urltoken%3DCFID%23%3D3527556%26CFTOKEN%23%3D60444930%23lastvisit%3D%7Bts%20%272006%2D05%2D10%2018%3A12%3A18%27%7D%23timecreated%3D%7Bts%20%272006%2D05%2D10%2018%3A12%3A18%27%7D%23hitcount%3D2%23cftoken%3D60444930%23cfid%3D3527556%23;expires=Fri, 02-May-2036 22:11:39 GMT;path=/'
(0x03000000):Content-Language = 'en-US'
(0x03000000):Connection = 'close'
)
(0x01000000):MQMD = (
(0x03000000):SourceQueue = 'MARC'
(0x03000000):Transactional = TRUE
(0x03000000):Encoding = 546
(0x03000000):CodedCharSetId = 437
(0x03000000):Format = ' '
(0x03000000):Version = 2
(0x03000000):Report = 0
(0x03000000):MsgType = 8
(0x03000000):Expiry = -1
(0x03000000):Feedback = 0
(0x03000000):Priority = 0
(0x03000000):Persistence = 0
(0x03000000):MsgId = X'414d512044455642524b36202020202080e1614420001f0d'
(0x03000000):CorrelId = X'000000000000000000000000000000000000000000000000'
(0x03000000):BackoutCount = 0
(0x03000000):ReplyToQ = ' '
(0x03000000):ReplyToQMgr = 'DEVBRK6 '
(0x03000000):UserIdentifier = 'laflema.dev '
(0x03000000):AccountingToken = X'160105150000002fd5ec6da1f4046243170a32dd08000000000000000000000b'
(0x03000000):ApplIdentityData = ' '
(0x03000000):PutApplType = 11
(0x03000000):PutApplName = 'C:\util\RFHUtil\rfhutil.exe '
(0x03000000):PutDate = DATE '2006-05-10'
(0x03000000):PutTime = GMTTIME '22:12:17.390'
(0x03000000):ApplOriginData = ' '
(0x03000000):GroupId = X'000000000000000000000000000000000000000000000000'
(0x03000000):MsgSeqNumber = 1
(0x03000000):Offset = 0
(0x03000000):MsgFlags = 0
(0x03000000):OriginalLength = -1
)
(0x01000010):XML = (
(0x05000018):XML = (
(0x06000011): = '1.0'
)
(0x06000002): = '
'
(0x01000000):KeyValue = (
(0x01000000):X-Original-HTTP-Status-Line = (
(0x02000000): = 'HTTP/1.1 200 OK'
)
(0x01000000):X-Original-HTTP-Status-Code = (
(0x02000000): = 200
)
(0x01000000):Server = (
(0x02000000): = 'Netscape-Enterprise/6.0'
)
(0x01000000):Date = (
(0x02000000): = 'Wed, 10 May 2006 22:12:18 GMT'
)
(0x01000000):Content-type = (
(0x02000000): = 'text/plain'
)
(0x01000000):Set-cookie = (
(0x02000000): = 'CFID=3527556;expires=Fri, 02-May-2036 22:11:39 GMT;path=/, CFTOKEN=60444930;expires=Fri, 02-May-2036 22:11:39 GMT;path=/, CFCLIENT_FPD=;expires=Fri, 02-May-2036 22:11:39 GMT;path=/, CFGLOBALS=urltoken%3DCFID%23%3D3527556%26CFTOKEN%23%3D60444930%23lastvisit%3D%7Bts%20%272006%2D05%2D10%2018%3A12%3A18%27%7D%23timecreated%3D%7Bts%20%272006%2D05%2D10%2018%3A12%3A18%27%7D%23hitcount%3D2%23cftoken%3D60444930%23cfid%3D3527556%23;expires=Fri, 02-May-2036 22:11:39 GMT;path=/'
)
(0x01000000):Content-Language = (
(0x02000000): = 'en-US'
)
(0x01000000):Connection = (
(0x02000000): = 'close'
)
)
)
)
(
(0x01000000):Variables = (
(0x03000000):Request = ''
)
)
''' from trace node ''TEST_HTTP.Trace1''.
The trace node ''TEST_HTTP.Trace1'' has output the specified trace data.
This is an information message provided by the message flow designer. The user response will be determined by the local environment. |
|
Back to top |
|
 |
mgk |
Posted: Thu May 11, 2006 2:05 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Hi,
The server you are connecting to is not returning a Content-Length field, which is invalid for an HTTP/1.1 server. If you set the request node to use HTTP/1.0 then you should be ok. You will not lose any performance by doing this, as the server is returning Connection:close and dies not support KeepAlive anyway.
The reason you are seeing the headers duplicated as your body is complicated, and is a defect. If you want to raise a PMR go ahead, but I will raise an internal defect to catch this anyway. If you use HTTP/1.0 you should not see this problem. Also, as you are specifing BLOB as the message domain of the returned data, then you do not need to specify an OutputMessageLocation of OutputRoot.Blob, as that is the default for the Blob domain anyway, and I think that if you remove this and go with the default you should not see this problem either.
Regards, _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
mlafleur |
Posted: Thu May 11, 2006 5:31 am Post subject: |
|
|
Acolyte
Joined: 19 Feb 2004 Posts: 73
|
mgk,
I tried your suggestions with no luck. I will raise a PMR. Thank you for your insight.
Regards, |
|
Back to top |
|
 |
mgk |
Posted: Thu May 11, 2006 6:15 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Hi,
I double checked with the code, and whilst you do need a PMR, if you use HTTP, rather than HTTPS then this should work ok. The server you specified above should be OK with this (as the URL you gave was a public server, I checked).
Don't forget, that in this case it is the server that is at fault. HTTP/1.1 requires a content-length to be returned, and this server does not do this. If you used a complient server then this would not happen. Do you have any influence over the server you use? Can you get it patched?
Also, just so I know, which version / fixpac of the message broker are you using?
Regards, _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
mlafleur |
Posted: Thu May 11, 2006 8:09 am Post subject: |
|
|
Acolyte
Joined: 19 Feb 2004 Posts: 73
|
I am using version 6.0.0.1
I tried it with just http and it worked.
I'm not sure what our security requirements for production will be, but I am guessing that I would have to use https.
I'll try contacting the owner of the server.
Thanks again. |
|
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
|
|
|
|