IIS with Websphere plugin

Topics: Developer Forum, User Forum
Jun 10, 2008 at 6:32 PM

We were using IIS as front-end for IBM websphere.
When ISAPI Rewrite filter is used to access files which are directly hosted by IIS, it is able to rewrite the request URL.
--------------------------------------------
Tue Jun 10 22:53:24 2008 - LogFile re-opened.
Tue Jun 10 22:53:24 2008 - Watcher:  TerminateWatch = FALSE
Tue Jun 10 22:53:24 2008 - FileChangeWatcher(): Await returns (TerminateWatch= FALSE)
Tue Jun 10 22:53:24 2008 - FileChangeWatcher: Await()...
Tue Jun 10 22:53:24 2008 - AwaitIniChangeAndReinit()...
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\iis\misc\default.india), in ptr (0x00132b70)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\iis\misc\default.india), in ptr (0x00132ba8)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:32 2008 - DoRewrites
Tue Jun 10 22:53:32 2008 - New Url: '/IISHelp/iis/misc/default.india'
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:32 2008 - Rule 1 : 4 matches
Tue Jun 10 22:53:32 2008 - ReplaceServerVariables: InputString='$1.asp$3' out='$1.asp$3'
Tue Jun 10 22:53:32 2008 - GenerateReplacementString: src='/IISHelp/iis/misc/default.india','(null)' ReplacePattern='$1.asp$3' vec=[[  [  0, 31, 0, 25, 26, 31, 31, 31] [] ] counts=4,0
Tue Jun 10 22:53:32 2008 - GenerateReplacementString: replacing ($1) with /IISHelp/iis/misc/default
Tue Jun 10 22:53:32 2008 - GenerateReplacementString: replacing ($3) with
Tue Jun 10 22:53:32 2008 - Result (length 29): /IISHelp/iis/misc/default.asp
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=1)
Tue Jun 10 22:53:32 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 1
Tue Jun 10 22:53:32 2008 - Rewrite Url to: '/IISHelp/iis/misc/default.asp'
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:32 2008 - DoRewrites
Tue Jun 10 22:53:32 2008 - New Url: '/IISHelp/iis/misc/default.asp'
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:32 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:32 2008 - No Rewrite
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\iis\misc\default.asp), in ptr (0x00132b70)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\iis\misc\default.asp), in ptr (0x00132ba8)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\iis\misc\navbar.asp), in ptr (0x00132b70)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\iis\misc\navbar.asp), in ptr (0x00132ba8)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:32 2008 - DoRewrites
Tue Jun 10 22:53:32 2008 - New Url: '/IISHelp/iis/misc/navbar.asp'
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:32 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:32 2008 - No Rewrite
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:32 2008 - DoRewrites
Tue Jun 10 22:53:32 2008 - New Url: '/IISHelp/iis/misc/navbar.asp'
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:32 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:32 2008 - No Rewrite
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\common\loc.prp), in ptr (0x000b1c90)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\common\loc.prp), in ptr (0x001234b8)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:32 2008 - DoRewrites
Tue Jun 10 22:53:32 2008 - New Url: '/IISHelp/common/loc.prp'
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:32 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:32 2008 - No Rewrite
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:32 2008 - DoRewrites
Tue Jun 10 22:53:32 2008 - New Url: '/IISHelp/common/loc.prp'
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:32 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:32 2008 - No Rewrite
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\iis\misc\cohhc.hhc), in ptr (0x00133bf0)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:32 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\iis\misc\cohhc.hhc), in ptr (0x00133ce8)
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:32 2008 - DoRewrites
Tue Jun 10 22:53:32 2008 - New Url: '/IISHelp/iis/misc/cohhc.hhc'
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:32 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:32 2008 - No Rewrite
Tue Jun 10 22:53:32 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:32 2008 - DoRewrites
Tue Jun 10 22:53:32 2008 - New Url: '/IISHelp/iis/misc/cohhc.hhc'
Tue Jun 10 22:53:32 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:32 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:32 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:32 2008 - No Rewrite
Tue Jun 10 22:53:51 2008 - watcher got something...
Tue Jun 10 22:53:51 2008 - Detected change in file 'IsapiRewrite4.ini'
Tue Jun 10 22:53:51 2008 - Detected change in the  ini file. . .
Tue Jun 10 22:53:51 2008 - Ionic URL Rewriting ISAPI Filter v1.2.12c
Tue Jun 10 22:53:51 2008 - ReadConfig
Tue Jun 10 22:53:51 2008 - LogFile re-opened.
Tue Jun 10 22:53:51 2008 - Read .ini file: new log file name: c:\temp\iirfLog.out.4020.log
Tue Jun 10 22:53:51 2008 - Read .ini file: setting LogLevel to 5
Tue Jun 10 22:53:51 2008 - Read .ini file: Iteration Limit= 5
Tue Jun 10 22:53:51 2008 - Read .ini file: Filter Priority is now: LOW (0x20000)
Tue Jun 10 22:53:51 2008 - ini line  20: RewriteRule   1 (.*).(india|php)(.*)$                          $1.jsp$3                                     (null)
Tue Jun 10 22:53:51 2008 - not a duplicate rule...
Tue Jun 10 22:53:51 2008 - Done reading .ini file: Found 1 rules (0 failed) on 22 lines


But when, i try to access those URLs supported by Websphere, no URL is found to rewrite, as below.
I have this rewrite filter priority as HIGH and in top of the order , i.e even before the iisWASPlugin.

--------------------------------------------
Tue Jun 10 22:53:51 2008 - LogFile re-opened.
Tue Jun 10 22:53:51 2008 - Watcher:  TerminateWatch = FALSE
Tue Jun 10 22:53:51 2008 - FileChangeWatcher(): Await returns (TerminateWatch= FALSE)
Tue Jun 10 22:53:51 2008 - FileChangeWatcher: Await()...
Tue Jun 10 22:53:51 2008 - AwaitIniChangeAndReinit()...
Tue Jun 10 22:53:57 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:57 2008 - OnUrlMap: storing physical path (C:\Program Files\IBM\WebSphere\Plugins\bin\iisWASPlugin_http.dll), in ptr (0x000ae590)
Tue Jun 10 22:53:57 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:57 2008 - OnUrlMap: storing physical path (C:\Program Files\IBM\WebSphere\Plugins\bin\iisWASPlugin_http.dll), in ptr (0x00132be0)
Tue Jun 10 22:53:57 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:57 2008 - DoRewrites
Tue Jun 10 22:53:57 2008 - New Url: '/sePlugins/iisWASPlugin_http.dll'
Tue Jun 10 22:53:57 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:57 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:57 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:57 2008 - No Rewrite
Tue Jun 10 22:53:57 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:53:57 2008 - DoRewrites
Tue Jun 10 22:53:57 2008 - New Url: '/sePlugins/iisWASPlugin_http.dll'
Tue Jun 10 22:53:57 2008 - ApplyRules (depth=0)
Tue Jun 10 22:53:57 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:53:57 2008 - ApplyRules: returning 0
Tue Jun 10 22:53:57 2008 - No Rewrite
Tue Jun 10 22:53:57 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:57 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:57 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:57 2008 - OnUrlMap: storing physical path (c:\inetpub\wwwroot), in ptr (0x000ae590)
Tue Jun 10 22:53:57 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:53:57 2008 - OnUrlMap: storing physical path (c:\inetpub\wwwroot), in ptr (0x00132be0)
Tue Jun 10 22:54:02 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:54:02 2008 - OnUrlMap: storing physical path (C:\Program Files\IBM\WebSphere\Plugins\bin\iisWASPlugin_http.dll), in ptr (0x000ae590)
Tue Jun 10 22:54:02 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:54:02 2008 - OnUrlMap: storing physical path (C:\Program Files\IBM\WebSphere\Plugins\bin\iisWASPlugin_http.dll), in ptr (0x00132be0)
Tue Jun 10 22:54:02 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:54:02 2008 - DoRewrites
Tue Jun 10 22:54:02 2008 - New Url: '/sePlugins/iisWASPlugin_http.dll'
Tue Jun 10 22:54:02 2008 - ApplyRules (depth=0)
Tue Jun 10 22:54:02 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:54:02 2008 - ApplyRules: returning 0
Tue Jun 10 22:54:02 2008 - No Rewrite
Tue Jun 10 22:54:02 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Tue Jun 10 22:54:02 2008 - DoRewrites
Tue Jun 10 22:54:02 2008 - New Url: '/sePlugins/iisWASPlugin_http.dll'
Tue Jun 10 22:54:02 2008 - ApplyRules (depth=0)
Tue Jun 10 22:54:02 2008 - Rule 1 : -1 (No match)
Tue Jun 10 22:54:02 2008 - ApplyRules: returning 0
Tue Jun 10 22:54:02 2008 - No Rewrite
Tue Jun 10 22:54:02 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:54:02 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:54:02 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:54:02 2008 - OnUrlMap: storing physical path (c:\inetpub\wwwroot), in ptr (0x000ae590)
Tue Jun 10 22:54:02 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Tue Jun 10 22:54:02 2008 - OnUrlMap: storing physical path (c:\inetpub\wwwroot), in ptr (0x00132be0)
Tue Jun 10 22:54:46 2008 - DllMain THREAD_DETACH, threadId= 5768

Please get me thru this.

Coordinator
Jun 11, 2008 at 10:08 PM

Sorry, I don't understand your question.

from reading your log file, I understand the bahavior you are seeing.

What behavior are you expecting?

You have a new url of '/sePlugins/iisWASPlugin_http.dll'

It is not being rewritten.

Is this a surprise?

Jun 12, 2008 at 4:12 AM
The first part of the log posted shows how this filter correctly works for those webapps serviced by IIS itself.
The later half of the log shows, i was trying to access a page serviced by IBM Websphere thru IIS via 'iisWASPlugin' filter. This doesnt seem to work.

Our requirement is such that, the external URL exposed should be with extension asp/aspx and this Re-write filter should map that to .jsp extension and route it to Websphere for servicing the request.

i.e http://localhost/PlantsByWebSphere/help.asp shud be mapped to http://localhost/PlantsByWebSphere/help.jsp by our Re-write filter and  then iisWASPlugin would map that to http://localhost:9080/PlantsByWebSphere/help.jsp .

Hope am clear this time.


Coordinator
Jun 12, 2008 at 2:53 PM
ok clear.

I don't see the http://localhost/PlantsByWebSphere/help.asp URL in your second log file.
The only URL I see is '/sePlugins/iisWASPlugin_http.dll'

I don't know exactly how the websphere plugin works, but... it sure seems that it is grabbing the incoming URL before IIRF grabs it.

Here's something to check; the instructions for IIRF show how to install the filter for a particular website.
It is also possible to install ISAPI filters for the entire web server, which may cover several websites.
I believe the filters installed for the entire server take precedence over the filters installed for a particular website.
If this were the case then maybe the websphere filter would redirect to '/sePlugins/iisWASPlugin_http.dll' before IIRF got a chance to do anything.

So... to test this out, check to see where the websphere plugin is installed.  Also try installing IIRF as a server-wide filter.

A question - how does the websphere plugin know which URLs are for websphere and which are not?
is it by URL path?  for example http://server/WebsphereUrl should be directed to Websphere but anything else stays in IIS?

If that is the case then you can get part-way to what you want by using http://server/NoWebsphere as your URL root for URLs that you don't want websphere to touch.
Then you can use IIRF to rewrite them to have a JSP extension, and the http://server/WebsphereUrl root. 

If you keep working with this you should be able to figure it out.

Jun 12, 2008 at 9:48 PM

I don't see the http://localhost/PlantsByWebSphere/help.asp URL in your second log file.
The only URL I see is '/sePlugins/iisWASPlugin_http.dll'

>> That is the problem.  As you said "it is grabbing the incoming URL before IIRF grabs it."

I have applied the ISAPI filter for the entire web server (websites) , with a priority of HIGH.
And the Websphere plugin is applied only to the 'Default Web Site', which has a virtual directory to webapps of websphere.
Still, ISAPI filter is not able to intercept before it is handed over to Websphere plugin.


A question - how does the websphere plugin know which URLs are for websphere and which are not?
is it by URL path?  for example http://server/WebsphereUrl should be directed to Websphere but anything else stays in IIS?
>> yup, Websphere plugin checks if the webapp path like http://server/myapp is provided in the config file that it uses, and forwards it to websphere for handling.


If that is the case then you can get part-way to what you want by using http://server/NoWebsphere as your URL root for URLs that you don't want websphere to touch.
Then you can use IIRF to rewrite them to have a JSP extension, and the http://server/WebsphereUrl root. 
I tried that too : From the following log , you can see that, after doing this, the webpshere plugin is not being called at all . And i get a page not found error.


--------------------------------------------
Fri Jun 13 02:13:50 2008 - Read .ini file: setting LogLevel to 5
Fri Jun 13 02:13:50 2008 - Read .ini file: Iteration Limit= 5
Fri Jun 13 02:13:50 2008 - Read .ini file: Filter Priority is now: HIGH (0x80000)
Fri Jun 13 02:13:50 2008 - ini line  20: RewriteRule   1 (.*)/IISHelp/(.*).(asp|php)(.*)$               $1/PlantsByWebSphere/$2.jsp$4                (null)
Fri Jun 13 02:13:50 2008 - not a duplicate rule...
Fri Jun 13 02:13:50 2008 - Done reading .ini file: Found 1 rules (0 failed) on 23 lines
Fri Jun 13 02:13:50 2008 - Ionic URL Rewriting ISAPI Filter v1.2.12c
Fri Jun 13 02:13:50 2008 - Initialize,  main threadId= 3596
Fri Jun 13 02:13:50 2008 - File watcher thread created.
Fri Jun 13 02:13:50 2008 - FileChangeWatcher(): Enter, threadId=4188...
Fri Jun 13 02:13:50 2008 - GetFilterVersion
Fri Jun 13 02:13:50 2008 - FileChangeWatcher: Await()...
Fri Jun 13 02:13:50 2008 - AwaitIniChangeAndReinit()...
Fri Jun 13 02:14:05 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Fri Jun 13 02:14:05 2008 - OnUrlMap: storing physical path (c:\windows\help\iishelp\help.asp), in ptr (0x0011f508)
Fri Jun 13 02:14:05 2008 - HttpFilterProc SF_NOTIFY_AUTH_COMPLETE
Fri Jun 13 02:14:05 2008 - DoRewrites
Fri Jun 13 02:14:05 2008 - New Url: '/IISHelp/help.asp'
Fri Jun 13 02:14:05 2008 - ApplyRules (depth=0)
Fri Jun 13 02:14:05 2008 - Rule 1 : 5 matches
Fri Jun 13 02:14:05 2008 - ReplaceServerVariables: InputString='$1/PlantsByWebSphere/$2.jsp$4' out='$1/PlantsByWebSphere/$2.jsp$4'
Fri Jun 13 02:14:05 2008 - GenerateReplacementString: src='/IISHelp/help.asp','(null)' ReplacePattern='$1/PlantsByWebSphere/$2.jsp$4' vec=[[  [  0, 17, 0, 0, 9, 13, 14, 17, 17, 17] [] ] counts=5,0
Fri Jun 13 02:14:05 2008 - GenerateReplacementString: replacing ($1) with
Fri Jun 13 02:14:05 2008 - GenerateReplacementString: replacing ($2) with help
Fri Jun 13 02:14:05 2008 - GenerateReplacementString: replacing ($4) with
Fri Jun 13 02:14:05 2008 - Result (length 27): /PlantsByWebSphere/help.jsp
Fri Jun 13 02:14:05 2008 - ApplyRules (depth=1)
Fri Jun 13 02:14:05 2008 - Rule 1 : -1 (No match)
Fri Jun 13 02:14:05 2008 - ApplyRules: returning 0
Fri Jun 13 02:14:05 2008 - ApplyRules: returning 1
Fri Jun 13 02:14:05 2008 - Rewrite Url to: '/PlantsByWebSphere/help.jsp'
Fri Jun 13 02:14:05 2008 - HttpFilterProc SF_NOTIFY_URL_MAP
Fri Jun 13 02:14:05 2008 - OnUrlMap: storing physical path (c:\inetpub\wwwroot\PlantsByWebSphere\help.jsp), in ptr (0x00120108)

All i would want , is to hide the jsp extension from the user ( i.e to hide the fact that it is being serviced by websphere internally ). Is there any other way out ?
Coordinator
Jun 12, 2008 at 11:23 PM
I see from your log that you successfully rewrote the URI from '/IISHelp/help.asp'
to '/PlantsByWebSphere/help.jsp'

That seems to work just fine. IIRF appears to be working fine.

The problem you are having is the rewritten URL is not going to Websphere.
I don't know why that would happen. I'm sorry, I don't know WebSphere.

I don't know how the websphere "plugin" works.  I don't know exactly what "plugin" means, - is it a filter?  An extension?   and I don't know how it works.   I think maybe you should try to talk to a WebSphere specialist?

good luck!

ps: also consider getting the current version of the IIRF filter.
Coordinator
Jun 12, 2008 at 11:39 PM
Is the Websphere "plugin" an ISAPI Extension, or a Filter? 

IIRF, upon successful rewrite, returns SF_STATUS_REQ_NEXT_NOTIFICATION, which tells IIS to pass the URL to the next filter in the chain.
If Websphere's plugin is a filter, then it will get the notification, *if* IIRF is set up with a higher priority than WebSphere.