5 Replies Latest reply on Feb 16, 2016 8:38 AM by Jerome Razen

    Question about Mid Tier 9.1 on IIS with Tomcat

      Share This:

      Hello

       

      Has anyone here installed Mid Tier 9.1 using IIS as webserver and using Tomcat as Servlet Engine?

       

      The Mid Tier installer detected our IIS service during the installation and then when it came to the Servlet Engine it detected our pre-installed Tomcat. And so we selected IIS and then we selected Tomcat.

       

      Things seem to work fine, but there's a little detail that has me worried: Below is a screenshot of our Mid Tier config page after the successful installation.

       

      MidTier.jpg

       

      As you can see, the Web Server Information only lists Tomcat.

      What I would EXPECT it to say is: "Microsoft-IIS/Apache Tomcat/8.0.30"

       

      That's how it always was in previous Mid Tier versions. It would show you BOTH your webserver and the servlet engine.

       

      This is how our older Mid Tiers (on 8.1) displays this:

       

      MidTier2.jpg

       

      Has this changed in Mid Tier 9.1? Or is it a bug in the way this is displayed?

       

      One could now say: "Well, maybe you THINK you selected IIS during the installation, but in fact maybe you made a mistake and didn't."

      To be sure, we re-ran the Mid Tier installer. Things went the same and the result was the same.

       

      And, to test things further, we stopped the "World Wide Web publishing service" in the Windows services on the Mid Tier and tried accessing the Mid Tier config page: The page wouldn't load.

      After starting this service again, the page loaded again.

       

      So it looks to me as if things are OK and it is in fact using IIS. Looks like this is just an issue in the way the Mid Tier config page displays this. But I'd feel better if someone could compare this with their own installation and confirm that they see the same behaviour. Mid Tier on IIS and Tomcat is a fairly widespread setup, I think, so hopefully others have tried this as well.

       

      Thanks!

        • 1. Re: Question about Mid Tier 9.1 on IIS with Tomcat
          Ganesh Gore

          Nice Catch!!

          I quickly checked midtier config pages code and this is what I found:

          --In file config_overview.jsp---

          // Get the Webserver information.

          String webInfo = pageContext.getServletContext().getServerInfo();

          boolean windowsIISInstalled =  Configuration.getInstance().getWindowsIISInstalled();

              if (windowsIISInstalled)

               webInfo = "Microsoft-IIS/" + webInfo;

           

          and

          //Display Information

          <TD width="225">Web Server Information</TD>

          <TD width="325"><%= com.remedy.arsys.share.HTMLWriter.escape(webInfo) %>

           

          [Actual code is written in config_005foverview_jsp.java file

          [\\Program Files\Apache Software Foundation\Tomcat7.0\work\Catalina\localhost\arsys\org\apache\jsp\shared\config\]

           

          It clearly shows string webinfo basically stores WebServer name and version.

          Please check method getServerInfo() documentation : ServletContext (Java EE 6 )

           

          and after that it checks if IIS is installed on the machine [using getWindowsIISInstalled() method],

          If yes, then it appends "Microsoft-IIS" to the webInfo string [check green line in above code]. [yes, It is hard-coded ]

           

          So in your case, this code is not able to find if IIS is installed or not on the system and hence results in wrong information.

          did you check this : How To Verify IIS is Installed

          Is it due to IIS version? or midtier version that fails to retrieve these details?

          If it was showing correct information then there must be something wrong in newer midtier 9.1 code (may be due to java compatibility)

          If it is feasible for you, Can you please check it with midtier 9.0 or with older version?

          • 2. Re: Question about Mid Tier 9.1 on IIS with Tomcat

            Thanks for all those details!

             

            I checked the "How to verify IIS is installed"-link you posted and looked into the registry: IIS is there, version 7.5, looks good.

             

            I won't be able to check Mid Tier 9.0, sorry.

            • 3. Re: Question about Mid Tier 9.1 on IIS with Tomcat
              Ganesh Gore

              Ok then we need to check why this code does not work for you. Value of variable boolean windowsIISInstalled

              must be true if IIS is installed on the server.

              To verify this, You need to print value of this variable.

              How to do this:

              1. Stop webserver

              2. Take a back up of "config_overview.jsp" file [\\Program Files\BMC Software\ARSystem9\midtier\shared\config]

              3. Add below code in this jsp file :

              [Please note blue is original code and green is new code]

              ORIGINAL CODE :

              if (windowsIISInstalled)

                    webInfo = "Microsoft-IIS/" + webInfo;

               

              NEW CODE:

              if (windowsIISInstalled)

                    webInfo = "Microsoft-IIS/" + webInfo;

                String Result1= windowsIISInstalled  + ""; 

               

              <TD width="325" class="BaseTableCellOdd BaseTableCellRight"><%= com.remedy.arsys.share.HTMLWriter.escape(webInfo) %></TD>    

              <TD width="325" class="BaseTableCellOdd BaseTableCellRight"><%= com.remedy.arsys.share.HTMLWriter.escape("IIS is installed?=" + Result1) %></TD>

               

              4. Save the file and restart the webserver.

              It will show something like :

               

              Check iF IIS installed.jpg

              [I don't have IIS so it shows false].

              If you get false as well then there is something wrong with BMC code or some IIS registry entry needs to be updated.   [I could not find any reference of getWindowsIISInstalled() method. It is used to check if IIS is installed or not but this is blackbox for me so Check with BMC!]

              • 4. Re: Question about Mid Tier 9.1 on IIS with Tomcat

                Thanks, Ganesh.

                It shows false for me as well, even though IIS is installed.

                 

                I'll inquire with BMC.

                • 5. Re: Question about Mid Tier 9.1 on IIS with Tomcat

                  Update: Our support says this is a defect they were able to reproduce:

                   

                  Defect #SW00503925