Security logic for JSP pages
I am developing a product using JSP and servlet. I want to know if any algorithm is there to prevent software piracy
Bad news: There is no such algorithm.
Good news: You don't need one.
Servlets and JSP are executed on the server so a user only gets plain html code. He actually has to hack your web server. Apply the usual measures (firewall, demilitarized zone and so on).
If you are talking about distributing your application to web service providers. You can use Obfuscators (like Zelix KlassMaster Java Obfuscator, CodeShield Java Byte Code Obfuscator , RetroGuard Java Obfuscator, ...) and build an online activation registration into your code (or any other licence mechanism).
Similar Messages
-
The security validation for this page is invalid – Infopath 2010
Hello Experts,
I have created browser enabled Infopath form and written a custom code (infopath 2010). I have a “Save” button on a form that submits the data into multiple relational sharepoint list. While debugging through VSTA everything goes well and successfully submits
the data, but after publishing a form(browser enabled) I am not able to save a data to sharepoint list. When I Clicked on save button, it just refreshing a page, even the same was getting after
made it to full trust and approved by Admin.
Before this I was using “Submit” button to submit a form, that time I was getting a popup with the message “There has been an error while processing the form”. And in log files it was showing error message as “The security validation
for this page is invalid”.
I referred many blogs regarding validation error and tried almost everything in every way, some of shortly mentioned below,
Formdigest (It not works for me)
Security Validation (It works perfectly)
The second option is working for me. (But this is not a good practice and also not recommended)
Just want to know “Without making Security Validation Off” how can I resolved this validation issue from infopath 2010 form.
Please share your thoughts on this. Any help is appreciated.
Regards,
UdayHi Uday,
Have you tried SPWebapplication.FormDigestSettings.Enabled = false to turn off the digest setting property for the web application? See this blog for the details.
http://ktskumar.wordpress.com/2009/03/09/the-security-validation-for-this-page-is-invalid-click-back-in-your-web-browser-refresh-the-page-and-try-your-operation-again/
Thanks & Regards,
Emir
Emir Liu
TechNet Community Support -
JavaScript - Error: The security validation for this page is invalid...
Hi there,
I have a question regarding javascript and the security validation.
I have created a custom action for a document library. This custom action should update a field in all selected documents by the user. But when I do the update, I got this error message:
"The security validation for this page is invalid. Click Back in your Web browser, refresh the page, and try your operation again."
I know, I could AllowUnsafeUpdates, if I were using C#, but actually I can only use JavaScript at this stage. Or does anybody know, how to allow this or switch to C# in this area?
Here is my custom action:
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<CustomAction
Id="GrolmansJavaScriptFile"
ScriptSrc="~site/_layouts/SharePoint-Z-Drive-Project/gg1855.js"
Location="ScriptLink">
</CustomAction>
<CustomAction
Description="Approve Documents"
Title="Approve Documents"
Id="RibbonDocumentsManageApproveDocuments"
Location="CommandUI.Ribbon"
RegistrationId="10000"
RegistrationType="List"
Sequence="0"
xmlns="http://schemas.microsoft.com/sharepoint/">
<CommandUIExtension xmlns="http://schemas.microsoft.com/sharepoint/">
<!-- Define the (UI) button to be used for this custom action -->
<CommandUIDefinitions>
<CommandUIDefinition Location="Ribbon.Documents.Manage.Controls._children">
<Button Id="Ribbon.Documents.Manage.ApproveDocuments"
Command="{4E2F5DC0-FE2C-4466-BB2D-3ED0D1917763}"
Image32by32="~site/_layouts/Images/SharePoint-Z-Drive-Project/approve_document_32x32.png"
Image16by16="~site/_layouts/Images/SharePoint-Z-Drive-Project/approve_document_16x16.png"
Sequence="0"
LabelText="Approve Documents"
Description="Approve Documents"
TemplateAlias="o1" />
</CommandUIDefinition>
</CommandUIDefinitions>
<CommandUIHandlers>
<!-- Define the action expected on the button click -->
<CommandUIHandler Command="{4E2F5DC0-FE2C-4466-BB2D-3ED0D1917763}" CommandAction="javascript:void(ApproveDocuments());" />
</CommandUIHandlers>
</CommandUIExtension>
</CustomAction>
</Elements>
And here is my JavaScript code file:
function ApproveDocuments()
var siteUrl = '/';
var clientContext = new SP.ClientContext(siteUrl);
var currentlibid = SP.ListOperation.Selection.getSelectedList();
var currentLib = clientContext.get_web().get_lists().getById(currentlibid); //Gets the current Library
var selectedItems = SP.ListOperation.Selection.getSelectedItems(clientContext);
for (var i in selectedItems) {
currentLib.getItemById(selectedItems[i].id).set_item('DocumentStatus', 'Approved');
currentLib.getItemById(selectedItems[i].id).update();
clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
function onQuerySucceeded()
alert('Document approved:' + newListItem.get_id());
function onQueryFailed(sender, args)
alert('Document approval failed: ' + args.get_message() + '\n' + args.get_stackTrace());
Any idea, how to perform the update on the selected items?
Thanks for any hint.
DennisOk, I found the reason.
I just had to replace the SP.ClientContext line in JavaScript.
Instead of
var clientContext = new SP.ClientContext(siteUrl);
I need to use this one:
var clientContext = SP.ClientContext.get_current();
Dennis -
SharePoint Error "The security validation for this page is invalid" when delete an item
Hi,
I have SharePoint 2010 setup and works fine until today all of a sudden it throws error "The security validation for this page is invalid" when delete a SharePoint document or list item.
There is no custom event handler deployed on library/list, and it should not be account issue as the same account works yesterday, and even after I turn off security validation from Central Admin, it still doesn't work.
The only change I did is turn off Dynamic Compression from IIS, after that I tried enable back Dynamic Compression but it still doesn't work.
Does anyone know what could be the possible reasons? Thanks in advance.hi,
in the page just try to make this :
<SharePoint:FormDigest runat="server" />
PrasadWT -
The security validation for this page is invalid
I am trying to declare items in doc library inside a specific folder as records. This is my code:
using (SPWeb site = SPContext.Current.Site.OpenWeb("myClassicSite")) {
site.AllowUnsafeUpdates = true;
SPList list = site.Lists.TryGetList(currentDocLibName);
SPFolder folder = list.GetItemById(foldId).Folder;
try {
SPDocumentLibrary doclib = (SPDocumentLibrary)site.Lists.TryGetList(currentDocLibName);
SPView defaultView = doclib.Views["my custom view"];
SPListItemCollection docColl = doclib.GetItemsInFolder(defaultView, folder);
foreach (SPListItem item in docColl) {
Records.DeclareItemAsRecord(item); // throws exception here
} catch (Exception) {
It throws exception: "The security validation for this page is invalid"
I just can't declare items as records, I tried RunwWithElevetedPriviledges, AllowUnsafeUpdate, and SPWebapplication.FormDigestSettings.Enabled = false;
What am I doing wrong?Have you tried adding SPUtility.ValidateFormDigest(); before the start of your code section? Have a look at the article below for more info on the same.
http://blogs.technet.com/b/meamcs/archive/2011/04/04/troubleshooting-sharepoint-error-the-security-validation-for-this-page-is-invalid.aspx
The problem should be originating because of the use of AllowUnsafeUpdates in your code above. Here is a good writeup on best practices when using AllowUnsafeUpdates in the code:
https://hristopavlov.wordpress.com/tag/formdigestsettings/
Thanks, Ransher Singh, MCP, MCTS | Click Vote As Helpful if you think that post is helpful in responding your question click Mark As Answer, if you think that this is your answer for your question. -
Using SharePoint 2010 Server
I'm attempting to programtically update a managed metadata field in a document library. I'm able to do it without issue on all other non-managed metadata fields. When I attempt it on a MM field I get the error message
"The security validation for this page is invalid. Click Back in your Web browser, refresh the page, and try your operation again."
After some digging I realised that this error was being caused because SharePoint was trying to write to the TaxonomyHiddenList list (../sites/mysite/Lists/TaxonomyHiddenList/AllItems.aspx)
When I update a document through the browser with a term (Term01), it shows up in this TaxonomyHiddenList . I can then run my application, apply Term01 to my new document and it works fine. But if I apply Term02 to my new document it gives me the error above.
Summary
My app can read the TaxonomyHiddenList fine but it can not perform an operation that would write to it, resulting in not being able to update the MM field.
Question
Is there any advice on how I can further debug this issue?Hi,
According to your post, my understanding is that you want to update managed metadata field in document library programmatically.
I have made a simple code demo below to updata managed metadata field in document library, it works like a charm, you can refer to it.
public static void UpdateMSField()
using (SPSite site = new SPSite("http://YourSiteURL"))
using (SPWeb web = site.OpenWeb())
//SPList list = web.Lists.TryGetList("Libs_1");
SPDocumentLibrary lib = (SPDocumentLibrary)web.Lists["Libs_1"];
// No point in proceeding if we can't find the list
if (lib != null)
// add a new item
// SPListItem item = list.AddItem();
SPListItem item = lib.GetItemById(1);
//Console.WriteLine(item.Name);
// get the current taxonomy session, which wraps up all of the
// associated TermStore objects for this SPSite object
TaxonomySession metadataService = new TaxonomySession(site);
// get the taxonomy field
TaxonomyField taxField = item.Fields["MMS_1"] as TaxonomyField;
// get the term store associated with the taxonomy field
TermStore termStore = metadataService.TermStores[taxField.SspId];
// get the actual term set associated with the taxonomy field
TermSet termSet = termStore.GetTermSet(taxField.TermSetId);
// search for the terms we wish to set the field to
var terms = termSet.GetTerms("term_1", true, StringMatchOption.ExactMatch, 1, false);
// if we have found a term populate the field
if (terms.Count > 0)
// set the field to the term(s) we have found
taxField.SetFieldValue(item, terms.First());
// Update the item
item.Update();
Console.WriteLine("success...");
More reference:
http://www.3guysonsharepoint.com/?p=1052
http://vineet-winit.blogspot.com/2013/04/how-to-update-managed-metadata-field-in.html
Thanks & Regards,
Jason
Jason Guo
TechNet Community Support -
hi,
i am trying to do documetation for jsp pages, but i not successed.
can someone clear this up for me? thanks!Try the Java developer section of the forums. You're not too likely to get an appropriate response in the SRSS area :-)
-
hi all,
In my project am including a html page in jsp.Now i want to save the html page only.Please any body help me to how to give save option for jsp page.
Thanks in advance.
mohan :)you can save it in with browser "save as"
-
Unable to securely request for a page
Question:
a) I'm unable to securely request for my webpage : https://127.0.0.1:8443/Blah , instead I get the following Error:
Firefox can't establish a connection to the server at localhost:8443.
The site could be temporarily unavailable or too busy. Try again in a few
moments.
If you are unable to load any pages, check your computer's network
connection.
If your computer or network is protected by a firewall or proxy, make sure
that Firefox is permitted to access the Web.
On Internet Explorer I simply get:
Internet Explorer cannot display the webpage
b) How do I know which SSL Implementation my tomcat is making use of: JSSE/APR
Details:
web.xml
<?xml version="1.0"?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="Your_WebApp_ID"
version="2.5">
<description>The standard web descriptor for the email client</description>
<servlet>
<servlet-name>AuthenticateUser</servlet-name>
<servlet-class>MailBoxController</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AuthenticateUser</servlet-name>
<url-pattern>/ControlPanel</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>login.jsp</welcome-file>
</welcome-file-list>
<error-page>
<error-code>401</error-code>
<location>/authenticationFailed.jsp</location>
</error-page>
<context-param>
<param-name>serverName</param-name>
<param-value>Gmail</param-value>
</context-param>
<context-param>
<param-name>port</param-name>
<param-value>993</param-value>
</context-param>
<context-param>
<param-name>ip</param-name>
<param-value>imap.gmail.com</param-value>
</context-param>
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<listener>
<listener-class>Logger</listener-class>
</listener>
<security-constraint>
<web-resource-collection>
<url-pattern>/*</url-pattern>
<http-method>POST</http-method>
</web-resource-collection>
<auth-constraint>
<role-name>administrator</role-name>
</auth-constraint>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
<security-role>
<role-name>administrator</role-name>
</security-role>
</web-app>
tomcat-users.xml :
<tomcat-users>
<role rolename="administrator"/>
<user username="admin" password="system123#" roles="administrator"/>
</tomcat-users>
Following tag was added in web.xml in conf of tomcat :
<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="C:/Users/.keystore" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS"/>
Can anybody please help me with my problem. Am I going wrong with configuring SSL?
Thanks
KrutikaI did add these lines:
<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="C:/Users/Krutika Ravi/.keystore" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS"/>
to the web.xml contained in conf folder of tomcat.
But didn't fiddle with server.xml -
After un-commenting
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
in server.xml contained in conf folder I get the following exceptions
Jul 25, 2012 11:11:41 PM org.apache.catalina.core.AprLifecycleListener init
INFO: Loaded APR based Apache Tomcat Native library 1.1.24 using APR version 1.4
.6.
Jul 25, 2012 11:11:41 PM org.apache.catalina.core.AprLifecycleListener init
INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], ra
ndom [true].
Jul 25, 2012 11:11:43 PM org.apache.catalina.core.AprLifecycleListener initializ
eSSL
INFO: OpenSSL successfully initialized (OpenSSL 1.0.1c 10 May 2012)
Jul 25, 2012 11:11:43 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-apr-8080"]
Jul 25, 2012 11:11:43 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-apr-8443"]
Jul 25, 2012 11:11:43 PM org.apache.coyote.AbstractProtocol init
SEVERE: Failed to initialize end point associated with ProtocolHandler ["http-ap
r-8443"]
java.lang.Exception: Connector attribute SSLCertificateFile must be defined when
using SSL with APR
at org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:484)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.jav
a:610)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:429)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:9
81)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardService.initInternal(StandardService
.java:559)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.j
ava:814)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:624)
at org.apache.catalina.startup.Catalina.load(Catalina.java:649)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:450)
Jul 25, 2012 11:11:43 PM org.apache.catalina.core.StandardService initInternal
SEVERE: Failed to initialize connector [Connector[HTTP/1.1-8443]]
org.apache.catalina.LifecycleException: Failed to initialize component [Connecto
r[HTTP/1.1-8443]]
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:106)
at org.apache.catalina.core.StandardService.initInternal(StandardService
.java:559)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.j
ava:814)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
at org.apache.catalina.startup.Catalina.load(Catalina.java:624)
at org.apache.catalina.startup.Catalina.load(Catalina.java:649)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:281)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:450)
Caused by: org.apache.catalina.LifecycleException: Protocol handler initializati
on failed
at org.apache.catalina.connector.Connector.initInternal(Connector.java:9
83)
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:102)
... 12 more
Caused by: java.lang.Exception: Connector attribute SSLCertificateFile must be d
efined when using SSL with APR
at org.apache.tomcat.util.net.AprEndpoint.bind(AprEndpoint.java:484)
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.jav
a:610)
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:429)
at org.apache.catalina.connector.Connector.initInternal(Connector.java:9
81)
... 13 more
Jul 25, 2012 11:11:43 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-apr-8009"]
Jul 25, 2012 11:11:43 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 2945 ms
Jul 25, 2012 11:11:43 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Jul 25, 2012 11:11:43 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.29
Jul 25, 2012 11:11:43 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive C:\Junkyard\apache-tomcat-7.0.29\webapps
\Blah.war
Jul 25, 2012 11:11:44 PM org.apache.catalina.loader.WebappClassLoader validateJa
rFile
INFO: validateJarFile(C:\Junkyard\apache-tomcat-7.0.29\webapps\Blah\WEB-INF\lib\
javax.servlet-5.1.12.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2.
Offending class: javax/servlet/Servlet.class
Logger Contructor
Servlet Context has been initialized
Jul 25, 2012 11:11:45 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\Junkyard\apache-tomcat-7.0.29\webap
ps\docs
Jul 25, 2012 11:11:45 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\Junkyard\apache-tomcat-7.0.29\webap
ps\examples
Jul 25, 2012 11:11:46 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\Junkyard\apache-tomcat-7.0.29\webap
ps\host-manager
Jul 25, 2012 11:11:46 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\Junkyard\apache-tomcat-7.0.29\webap
ps\manager
Jul 25, 2012 11:11:46 PM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory C:\Junkyard\apache-tomcat-7.0.29\webap
ps\ROOT
Jul 25, 2012 11:11:46 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-apr-8080"]
Jul 25, 2012 11:11:46 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-apr-8009"]
Jul 25, 2012 11:11:46 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 2728 ms
Edited by: 948555 on Jul 25, 2012 10:42 AM -
How to implement content caching for jsp page ?
Hello everyone,
I am reading an article <Servlets and Jsp Best Practice>,at
http://developer.java.sun.com/developer/technicalArticles/javaserverpages/servlets_jsp/#author, on one section it is saying :
"Cache content: You should never dynamically regenerate content that doesn't
change between requests. You can cache content on the client-side, proxy-
side,or server-side. "
Now I am working on a project. For every user, some of the content servlet generated will be the same for at least a week . I am thinking if I implement caching for these jsp pages, that would increase performace a lot.
But I have no idea how to implement it either client-side or server-side, can someone give me a hint ?
Thanks,
RachelYou mean actually you are caching the response stream
and the key to distinguish between different response
streams are made of user's different request
parameters. And the filter's function is to intercept
the request to see if this request parameter's
combination already exists in the Hashmap,then either
use the cached response or forward to
servlet.....really interesting...Do I get it right ?Yes that's it in a nutshell.
>
Then how do you build those response streams in
advance ? You did it manually or have some mechanism
to build it automatically ?
The data gets cached the first time somebody visits the page.
Find some examples on Filters, and take a look at the HttpServletResponseWrapper class. You need to cache response headers as well as the body. Another pitfall that you might run into is handling an If-modified-since header on the request. Don't cache the results of those requests.
-Jonathan
>
Thanks again !
Rachel -
Hi,
I have the following requirement. I have a site consisting of JSP pages. I need to provide a print version for every page.
The problem is, while printing, if a webpage spans for multiple printing pages, I need to put a footer on each of these pages. But, this footer must appear only once (at the bottom of the page).
How do I achieve this? any help will be greatly appreciated.there is one work around for doing this... in order to print the header and footer...generate a dummy page with the exact format...
Header
20-25 Lines Text
Footer
Header
20-25 Lines Text
Footer
and so on...
so when this is flushed to the printer....u would get every page formatted with Header and Footer as this is going to happen in the background...there willl be no pblm to users...
hope this helps u... -
Slow response time for JSP pages under iAS 6.0 SP4
Hi,
I got an application deployed on iplanet app server 6.0 SP4 on solaris
2.8. Using a single kjs engine and lite sessions. kjs memory size is
min 256 and max 256 megs. but verbose:gc shows memory is 98% free.
when i restart the app server, all JSP pages are really rendered fast.
After a while (1 or 2 days), the time to service the same request to
JSP pages is getting much longer (even with JSP pages having only
static content in them). CPU is idle ... It just takes time. KXS log
shows requet is taking like 2-4 seconds instead of about 150 milli
secs when the engine is just restarted.
Now if i call a servlet (which do not dispath to a JSP), the response
time is ok! Memory is ok. It looks like its related to JSP pages
only.
Anyone having an idea what the problem could be? One conig param is
the JSP page cache in iASAT. Default value is 10. What is a correct
setting for production? I have 4 different web app deployed in the
same server instance.
Tanks a lot for your input
Andre ParadisAndre,
I have found the answer to my problem and perhaps yours. It seems that I18N (internationalization) in SP4 may have a performance bug in it.
My soak tests show that with i18N checked in the iAS Admin Tool, testing the fortune cookie sample application with light load (1 request / sec) resulted in a kxs response time initially of 15ms, however this response time increased by roughly 1% per request (i.e after 100 requests the response time had more than doubled).
Switching I18N off yielded a steady 7ms kxs response time from the fortune cookie application.
I would add that I turned I18N on AFTER the installation procedure.
Is this a known issue in SP4? Is there a patch?
regards,
Owen -
Is any free tool bar for jsp page?
hi,
I am having web pages.
so I am entering some data in text area.
how to select the font ,size,colors in jsp page.
i want features like word in jsp page.
is it any free software available to change font,color of text.
Thanks
sivaand here is the js script for textEditorContent.js ...
function boldThis(from)
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus()
if (from == 2) document.form1.text.select()
strSelection = document.selection.createRange().text
document.selection.createRange().text = strSelection + "<b></b>"
else
document.selection.createRange().text = "<b>" + strSelection + "</b>"
return;
function underlineThis(from)
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus()
if (from == 2) document.form1.text.select()
strSelection = document.selection.createRange().text
document.selection.createRange().text = strSelection + "<u></u>"
else
document.selection.createRange().text = "<u>" + strSelection + "</u>"
return;
function italicThis(from)
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus()
if (from == 2) document.form1.text.select()
strSelection = document.selection.createRange().text
document.selection.createRange().text = strSelection + "<i></i>"
else
document.selection.createRange().text = "<i>" + strSelection + "</i>"
return;
function fontThis(from)
var ind=document.form1.fontnames.selectedIndex;
newfont=document.form1.fontnames[ind].value;
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus()
if (from == 2) document.form1.text.select()
strSelection = document.selection.createRange().text
document.selection.createRange().text = strSelection + "<font face='"+newfont+"'></font>"
else
document.selection.createRange().text = "<font face='"+newfont+"'>" + strSelection + "</font>"
return;
function sizeThis(from)
var ind=document.form1.fontsizes.selectedIndex;
newsize=document.form1.fontsizes[ind].value;
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus()
if (from == 2) document.form1.text.select()
strSelection = document.selection.createRange().text
document.selection.createRange().text = strSelection + "<font size='"+newsize+"'></font>"
else
document.selection.createRange().text = "<font size='"+newsize+"'>" + strSelection + "</font>"
return;
function colorThis(from)
var ind=document.form1.colors.selectedIndex;
newcolor=document.form1.colors[ind].value;
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus()
if (from == 2) document.form1.text.select()
strSelection = document.selection.createRange().text
document.selection.createRange().text = strSelection + "<font color='"+newcolor+"'></font>"
else
document.selection.createRange().text = "<font color='"+newcolor+"'>" + strSelection + "</font>"
return;
function newlineThis()
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus()
document.selection.createRange().text = strSelection + "<br>";
return;
function insertPic()
var ind=document.form1.pictures.selectedIndex;
if(ind==0)
alert(msg15)
return false;
newpic=document.form1.pictures[ind].value;
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus();
document.selection.createRange().text = strSelection +"<img border=0 src='"+newpic+"'>";
return;
function ahrefThis()
strSelection = document.selection.createRange().text
if (strSelection == "")
document.form1.text.focus()
document.selection.createRange().text = "<a href='" + document.form1.hyperlinknm.value + "' target='_blank'>" + strSelection + "</a>"
return;
function textview()
popupWindow5=open("EDETAIL_Text_View.jsp",'Windown','scrollbars=YES,resizable=YES,left=10,top=20,toolbar=no,width=1000,height=600');
if (popupWindow5.opener == null)
popupWindow5.opener = self;
popupWindow5.focus();
function callSave(size, module, msg)
if(!checkMaxLength(document.form1.text,size,msg))
return;
if(isBlank(document.form1.text.value))
alert(module+" "+msg11);
document.form1.text.focus();
document.form1.text.select();
return false;
if(module=='Question')
var tempstr ="";
var count = document.form1.rowCount.value;
var ind = document.form1.anstype.selectedIndex;
for (i=0; i<count; i++)
if(count==1)
if(ind>0) // RADIO or CHECKBOX or DROPDOWN
tempstr = document.form1.answerDesc.value;
if(ind==1) // RADIO BUTTON
if(!checkMaxLength(document.form1.answerDesc,500,"Answer Option"))
return;
if(!checkMaxLength(document.form1.feedbackDesc,500,"Answer Option"))
return;
else
if(ind>0) // RADIO or CHECKBOX or DROPDOWN
tempstr = document.form1.answerDesc.value;
if(ind==1) // RADIO BUTTON
if(!checkMaxLength(document.form1.answerDesc[i],500,"Answer Option"))
return;
if(!checkMaxLength(document.form1.feedbackDesc[i],500,"Answer Option"))
return;
if(ind>0)
if(isBlank(tempstr) )
alert(msg12);
if(count==1)
document.form1.answerDesc.focus();
document.form1.answerDesc.select();
else
document.form1.answerDesc[i].focus();
document.form1.answerDesc[i].select();
return false;
for (j=i+1; j<count; j++)
if(document.form1.answerDesc[i].value==document.form1.answerDesc[j].value)
alert(msg13);
document.form1.answerDesc[j].focus();
document.form1.answerDesc[j].select();
return false;
document.form1.submit();
This function is used to go back to previous screen
function goBack()
if(window.confirm(msg14))
if(document.form1.From.value=="Page")
document.form1.action="EDETAIL_Add_Page_Content.jsp";
else
document.form1.action="EDETAIL_Upload_Text_Editor.jsp";
document.form1.submit();
By the way didnt this forum itself give you a big hint on Bold, Itallic & underline ? -
Need help in countdowntimer in java bean for jsp page
hi..im student..i need help with countdowntimer in jsp page..with java bean component..im use XHTML MP for my jsp page so i can use it in cellular phone with WAP 1..can anybody help me with this problem..thx
hi..im student..i need help with countdowntimer in jsp page..with java bean component..im use XHTML MP for my jsp page so i can use it in cellular phone with WAP 1..can anybody help me with this problem..thx
-
Can't find Design View for JSP page on Unix
I'm using weblogic workshop to develop page flow on Solaris, and I can't find the Design View tab to build
JSP page. I searched all menus and can't find one to enable this function. Is this function supported on Unix?
Thanks
ZhongZhong--
Unfortunately, no; Workshop 8.x does not support design view on UNIX.
Eddie
Maybe you are looking for
-
When I go to my author account at Amazon.com I have to enter my password into a secure area before I can add books or edit already published Kindle books. With Firefox the secure buttons do not appear, hence no access. With IE I do not have this prob
-
Account Payable - Scheduled Payments
Hello All, I am working in AP and need to identify any invoices that have a scheduled pay dates in the future. This must have to do with the AP_PAYMENT_SCHEDULES_ALL table. Metalink says almost nothig about these fields. (1) Is the "creation_date" th
-
REPLACE RECORD or REPLACE LINE
Hello gurus, I need hepl to solve this problem: The line with 00 is in a currency and the line with 10 is the same amount in EURO. 00 Account1 Currency USD amount 10 Account1 Currency EUR amount 00 Account2 Currency AUD amount 10 Account2
-
My iPad mini 3 says there is not enough room to sync in iTunes, yet my iPad says there is 21 GB and the bar when connected say 21 GB. I was trying to sync one 1.5GB movie and it says there is not enough space. Ideas?
-
Create new site from twitter bootstrap template
Hi everyone how can i create a trial site from the twitter bootstrap template that we can download from bcgurus with the basic free partnern ship plan?