Although you seem pretty happy with the way it is working in IIS, it might be worth noting that SiteMinder may return the headers in the "ALL_HTTP" variable rather than as separate header variables. To ensure these values are also shown in your debug page, you might like to update the debug code to something like:
Code:
<TABLE BORDER=1>
<TR>
<TH>Variable</TH>
<TH>Value</TH>
</TR>
<% For Each strVarName in Request.ServerVariables %>
<TR>
<TD><%=strVarName%></TD>
<TD>
<%
If Len(Request.ServerVariables(strVarName)) = 0 Then
Response.Write GetAttribute(strVarName)
Else
Response.Write Request.ServerVariables(strVarName)
End If
Response.Write " </TD>"
%>
</TR>
<% Next %>
</TABLE>
<%
Function GetAttribute(AttrName)
Dim AllAttrs
Dim RealAttrName
Dim Location
Dim Result
AllAttrs = Request.ServerVariables("ALL_HTTP")
RealAttrName = AttrName
Location = InStr(AllAttrs, RealAttrName & ":")
If Location <= 0 Then
GetAttribute = ""
Exit Function
End If
Result = Mid(AllAttrs, Location + Len(RealAttrName) + 1)
Location = InStr(Result, Chr(10))
If Location <= 0 Then Location = Len(Result) + 1
GetAttribute = Left(Result, Location - 1)
End Function
%>
Regarding the missing headers when using JSP, it might be worth checking that your SiteMinder ISAPI filter is higher in the list than the Tomcat/WebLogic filter. Apart from that, there may be a setting in Tomcat/Weblogic that is removing the header variables or preventing them from being passed through.