JVM

Testing JSP Changes In IBM WebSphere Without ReStarting The Service

button print grnw20 Testing JSP Changes In IBM WebSphere Without ReStarting The Service

This is a follow-up to my previous post “Restricting The EnterpriseOne Evironment On The JAS Server”.

While coming up with my solution to how to restrict users to an environment when logging on to a JAS server that hosted a path code with multiple environments attached to it, I wanted to be able to test my changes “on-the-fly”.  I didn’t want to restart the service every time.

So, that’s when I found the “temp” directory.

  • This is the “production” directory:
    C:WebSphereAppServerprofilesdefaultinstalledAppsNode01CellJPD811_HTML.earwebclient.warshare
  • This is the “temp” directory:
    C:WebSphereAppServerprofilesdefault<strong>temp</strong>Node01JPD811_84JPD811_HTMLwebclient.warshare

A file named “_html4env.class” will be placed in there when a user logs in.  It is a compiled version of the “html4env.jsp” file.  So, if you delete that file and make a change to the “html4env.jsp” file or the “_EnvRestriction.htm” file, when a user tries to login WebSphere will compile the “html4env.jsp” file and create a new “_html4env.class” file with your changes.


Restricting The EnterpriseOne Evironment On The JAS Server

button print grnw20 Restricting The EnterpriseOne Evironment On The JAS Server

The organization has a requirement to have a user only login to a certain environment from a certain JAS server instance.

With a basic install of EnterpriseOne, this would be very easy. However, the 2 environments that are required to be separated are build on top of the same pathcode. Within the JAS settings there is a "Path Codes" parameter that allows you to specify which Path Code will be allowed to be accessed from that particular HTML Server instance.

As you can see from the image, there is also a setting for the "Default Environment". However, there is not a setting to specify which environments are allowed to be accessed.

So, I did a little JSP hacking and came up with a way to restrict the EnterpriseOne environments that can be accessed from a particular HTML Server instance on JAS:

The solution involves creating a file that gets "included" into another.

The first file is the one that we created. We called it "_EnvRestriction.htm":

	<tr>
		<td colspan="3" style="font-size:larger">
			<strong>YOU DO NOT HAVE ACCESS TO THIS ENVIRONMENT!</strong>
			<br /><br />
			You will be redirected to <a href="http://&lt;%=redirectTargetURL%&gt;"></a> in <span style="color:red">10</span> seconds.
		</td>
	</tr>
	
		function redirect(url, msg)
		{
		   var TARG_ID = "redirectSpan";
		   var e = document.getElementById(TARG_ID);
		   var cTicks = parseInt(e.innerHTML);
		   var timer = setInterval(function()
		   {
			  if( cTicks )
			  {
				 e.innerHTML = --cTicks;
			  }
			  else
			  {
				 clearInterval(timer);
				 document.body.innerHTML = msg;
				 location = url;	  
			  }
		   }, 1000);
		}
		redirect("http://","")
	
	input{display:none;}label{display:none;}

Next we edit the file "html4env.jsp" to include our new file (_EnvRestriction.htm). At about line 172, we include the following right before the <tr> tag:


Please Note: this may not be the best way to restrict environments but it is what we are using. Also, this solution has been successfully used for EnterpriseOne Tools Release 8.97.2.0 & 8.97.2.6. If you are using a Tools Release other than those listed you may need to make adjustments for this solution to work or it may not work at all.

Is there another way to restrict the environment that a user is able to login to when accessing a JAS server if there are multiple environments built on top of the same path code?

1 Comment more...

Verify That A Version Of Java Is Available

button print grnw20 Verify That A Version Of Java Is Available

Previously, I wrote about some Java commands that can be used to determine your default Java version.

The following can be used to verify that a certain version of the Java Runtime Environment (JRE) is available on your system.

JAVA CLASS(PropDump) PROP((java.version 1.5))


Handy eGen Tweak

button print grnw20 Handy eGen Tweak

In order to shorten the time that it takes to run the eGen process, I modify a couple settings in the gen.bat file.  They modify the memory that is used by the JVM.

  • ms128m –> ms512m
  • mx512m –> mx1024m

The full line in the gen.bat looks like the following:

%JAVA_PGM% -Xss1m -ms512m -mx1536m -Ddefault_path=%INI_DIR% -classpath %GEN_CLASSPATH% com.jdedwards.runtime.generator.Generator %1

NOTE: This is on a workstation with 2GB RAM running Tools Release 8.97 and the settings are what I use.  This is not a recommendation from Oracle.

Do you have any tweaks for the eGen process that you use?


  • E1Tips Job List

  • Directory Membership

  • Copyright © 1996-2010 E1 Tips. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress