com.netscape.cms.servlet.profile
Class ProfileServlet

java.lang.Object
  extended by javax.servlet.GenericServlet
      extended by javax.servlet.http.HttpServlet
          extended by com.netscape.cms.servlet.base.CMSServlet
              extended by com.netscape.cms.servlet.profile.ProfileServlet
All Implemented Interfaces:
java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig
Direct Known Subclasses:
ProfileApproveServlet, ProfileListServlet, ProfileProcessServlet, ProfileReviewServlet, ProfileSelectServlet, ProfileSubmitCMCServlet, ProfileSubmitServlet

public class ProfileServlet
extends CMSServlet

This servlet is the base class of all profile servlets.

Version:
$Revision: 1211 $, $Date: 2010-08-18 10:15:37 -0700 (Wed, 18 Aug 2010) $
See Also:
Serialized Form

Field Summary
static java.lang.String ARG_AUTH_CONSTRAINT
           
static java.lang.String ARG_AUTH_DESC
           
static java.lang.String ARG_AUTH_ID
           
static java.lang.String ARG_AUTH_IS_SSL
           
static java.lang.String ARG_AUTH_LIST
           
static java.lang.String ARG_AUTH_NAME
           
static java.lang.String ARG_AUTH_SYNTAX
           
static java.lang.String ARG_CON_DESC
           
static java.lang.String ARG_CON_LIST
           
static java.lang.String ARG_CON_NAME
           
static java.lang.String ARG_CON_VALUE
           
static java.lang.String ARG_DEF_CONSTRAINT
           
static java.lang.String ARG_DEF_DESC
           
static java.lang.String ARG_DEF_ID
           
static java.lang.String ARG_DEF_LIST
           
static java.lang.String ARG_DEF_NAME
           
static java.lang.String ARG_DEF_SYNTAX
           
static java.lang.String ARG_DEF_VAL
           
static java.lang.String ARG_ERROR_CODE
           
static java.lang.String ARG_ERROR_REASON
           
static java.lang.String ARG_INPUT_CONSTRAINT
           
static java.lang.String ARG_INPUT_ID
           
static java.lang.String ARG_INPUT_LIST
           
static java.lang.String ARG_INPUT_NAME
           
static java.lang.String ARG_INPUT_PLUGIN_DESC
           
static java.lang.String ARG_INPUT_PLUGIN_ID
           
static java.lang.String ARG_INPUT_PLUGIN_LIST
           
static java.lang.String ARG_INPUT_PLUGIN_NAME
           
static java.lang.String ARG_INPUT_SYNTAX
           
static java.lang.String ARG_INPUT_VAL
           
static java.lang.String ARG_IS_RENEWAL
           
static java.lang.String ARG_OP
           
static java.lang.String ARG_OUTPUT_CONSTRAINT
           
static java.lang.String ARG_OUTPUT_ID
           
static java.lang.String ARG_OUTPUT_LIST
           
static java.lang.String ARG_OUTPUT_NAME
           
static java.lang.String ARG_OUTPUT_SYNTAX
           
static java.lang.String ARG_OUTPUT_VAL
           
static java.lang.String ARG_POLICY
           
static java.lang.String ARG_POLICY_ID
           
static java.lang.String ARG_POLICY_SET_ID
           
static java.lang.String ARG_POLICY_SET_LIST
           
static java.lang.String ARG_PROFILE
           
static java.lang.String ARG_PROFILE_APPROVED_BY
           
static java.lang.String ARG_PROFILE_DESC
           
static java.lang.String ARG_PROFILE_ENABLED_BY
           
static java.lang.String ARG_PROFILE_ID
           
static java.lang.String ARG_PROFILE_IS_ENABLED
           
static java.lang.String ARG_PROFILE_IS_VISIBLE
           
static java.lang.String ARG_PROFILE_NAME
           
static java.lang.String ARG_PROFILE_REMOTE_ADDR
           
static java.lang.String ARG_PROFILE_REMOTE_HOST
           
static java.lang.String ARG_PROFILE_SET_ID
           
static java.lang.String ARG_RECORD
           
static java.lang.String ARG_RENEWAL_PROFILE_ID
           
static java.lang.String ARG_REQUEST_CREATION_TIME
           
static java.lang.String ARG_REQUEST_ID
           
static java.lang.String ARG_REQUEST_LIST
           
static java.lang.String ARG_REQUEST_MODIFICATION_TIME
           
static java.lang.String ARG_REQUEST_NONCE
           
static java.lang.String ARG_REQUEST_NOTES
           
static java.lang.String ARG_REQUEST_OWNER
           
static java.lang.String ARG_REQUEST_STATUS
           
static java.lang.String ARG_REQUEST_TYPE
           
static java.lang.String ARG_XML_OUTPUT
           
static java.lang.String AUTHZ_CONFIG_STORE
           
static java.lang.String AUTHZ_MGR_BASIC
           
static java.lang.String AUTHZ_MGR_LDAP
           
static java.lang.String AUTHZ_SRC_LDAP
           
static java.lang.String AUTHZ_SRC_TYPE
           
static java.lang.String AUTHZ_SRC_XML
           
protected  java.lang.String mAclMethod
           
protected  java.lang.String mAuthMgr
           
protected  IAuthzSubsystem mAuthz
           
protected  java.lang.String mAuthzResourceName
           
protected  java.lang.String mGetClientCert
           
protected  java.lang.String mId
           
protected  int mLogCategory
           
protected  ILogger mLogger
           
protected  java.lang.String mProfileSubId
           
protected  ILogger mSignedAuditLogger
           
static java.lang.String PROP_ACL
           
static java.lang.String PROP_AUTHZ_MGR
           
static java.lang.String PROP_RESOURCEID
           
 
Fields inherited from class com.netscape.cms.servlet.base.CMSServlet
ADMIN_GROUP, AUTH_FAILURE, AUTHMGR_PARAM, CA_AGENT_GROUP, CERT_ATTR, CERT_AUTH_CRED, ERROR_MSG_TOKEN, ERROR_TEMPLATE, EXCEPTION_TEMPLATE, FAILURE, FINAL_ERROR_MSG, FULL_ENROLLMENT_REQUEST, FULL_ENROLLMENT_RESPONSE, FULL_RESPONSE, KRA_AGENT_GROUP, mAuthority, mConfig, mDontSaveHttpParams, mFinalErrorMsg, mOutputTemplatePath, mRenderResult, mRequestQueue, mSaveHttpHeaders, mServletConfig, mServletContext, mTemplates, OCSP_AGENT_GROUP, PENDING_TEMPLATE, PFX_AUTH_TOKEN, PFX_HTTP_HEADER, PFX_HTTP_PARAM, PROP_AUTHORITY, PROP_ERROR_TEMPLATE, PROP_EXCEPTION_TEMPLATE, PROP_FINAL_ERROR_MSG, PROP_PENDING_TEMPLATE, PROP_REJECTED_TEMPLATE, PROP_SUCCESS_TEMPLATE, PROP_SUCCESS_TEMPLATE_FILLER, PROP_SVC_PENDING_TEMPLATE, PROP_UNAUTHORIZED_TEMPLATE, RA_AGENT_GROUP, REJECTED_TEMPLATE, SIMPLE_ENROLLMENT_REQUEST, SIMPLE_ENROLLMENT_RESPONSE, SUCCESS, SUCCESS_TEMPLATE, SVC_PENDING_TEMPLATE, TEMPLATE_NAME, TRUSTED_RA_GROUP, UNAUTHORIZED_TEMPLATE
 
Constructor Summary
ProfileServlet()
           
 
Method Summary
protected  java.lang.String escapeJavaScriptString(java.lang.String v)
           
protected  java.lang.String escapeXML(java.lang.String v)
           
protected  java.util.Locale getLocale(javax.servlet.http.HttpServletRequest req)
          Retrieves locale based on the request.
 void init(javax.servlet.ServletConfig sc)
          initialize the servlet.
protected  void log(int event, int level, java.lang.String msg)
          log according to authority category.
protected  void log(int level, java.lang.String msg)
           
protected  void outputArgList(java.io.PrintWriter writer, java.lang.String name, ArgList list)
           
protected  void outputArgSet(java.io.PrintWriter writer, java.lang.String name, ArgSet set)
           
protected  void outputArgString(java.io.PrintWriter writer, java.lang.String name, ArgString str)
           
protected  void outputArgValueAsXML(java.io.PrintStream ps, java.lang.String name, IArgValue v)
           
protected  void outputData(java.io.PrintWriter writer, ArgSet set)
           
 void outputTemplate(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, ArgSet args)
           
protected  void outputThisAsXML(java.io.ByteArrayOutputStream bos, ArgSet args)
           
protected  void renderResult(CMSRequest cmsReq)
          Output a template.
 
Methods inherited from class com.netscape.cms.servlet.base.CMSServlet
areCertsFromCA, audit, auditGroupID, auditSubjectID, authenticate, authenticate, authenticate, authenticate, authorize, authorize, certIsRevoked, checkImportCertToNav, clientIsMSIE, clientIsNav, connectionIsSSL, doCMMFResponse, doFullResponse, escapeValueRfc1779, formCRLEntry, generateSalt, getAuthCreds, getAuthMgr, getAuthToken, getCertRecord, getDontSaveHttpParams, getId, getLangFile, getLocale, getRelPath, getSaveHttpHeaders, getSSLClientCertificate, getTemplate, getX509Certificate, hashPassword, importCertToNav, invalidateSSLSession, isCertFromCA, isClientCertRequired, isSystemCertificate, newCMSRequest, newFillerObject, outputArgBlockAsXML, outputError, outputError, outputError, outputHttpParameters, outputResult, outputXML, process, renderException, renderFinalError, renderTemplate, saveAuthToken, saveHttpHeaders, saveHttpParams, service, setDefaultTemplates, toHashtable
 
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
 
Methods inherited from class javax.servlet.GenericServlet
destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ARG_ERROR_CODE

public static final java.lang.String ARG_ERROR_CODE
See Also:
Constant Field Values

ARG_ERROR_REASON

public static final java.lang.String ARG_ERROR_REASON
See Also:
Constant Field Values

ARG_RECORD

public static final java.lang.String ARG_RECORD
See Also:
Constant Field Values

ARG_OP

public static final java.lang.String ARG_OP
See Also:
Constant Field Values

ARG_REQUEST_LIST

public static final java.lang.String ARG_REQUEST_LIST
See Also:
Constant Field Values

ARG_REQUEST_ID

public static final java.lang.String ARG_REQUEST_ID
See Also:
Constant Field Values

ARG_REQUEST_TYPE

public static final java.lang.String ARG_REQUEST_TYPE
See Also:
Constant Field Values

ARG_REQUEST_STATUS

public static final java.lang.String ARG_REQUEST_STATUS
See Also:
Constant Field Values

ARG_REQUEST_OWNER

public static final java.lang.String ARG_REQUEST_OWNER
See Also:
Constant Field Values

ARG_REQUEST_CREATION_TIME

public static final java.lang.String ARG_REQUEST_CREATION_TIME
See Also:
Constant Field Values

ARG_REQUEST_MODIFICATION_TIME

public static final java.lang.String ARG_REQUEST_MODIFICATION_TIME
See Also:
Constant Field Values

ARG_REQUEST_NONCE

public static final java.lang.String ARG_REQUEST_NONCE
See Also:
Constant Field Values

ARG_AUTH_ID

public static final java.lang.String ARG_AUTH_ID
See Also:
Constant Field Values

ARG_AUTH_SYNTAX

public static final java.lang.String ARG_AUTH_SYNTAX
See Also:
Constant Field Values

ARG_AUTH_CONSTRAINT

public static final java.lang.String ARG_AUTH_CONSTRAINT
See Also:
Constant Field Values

ARG_AUTH_NAME

public static final java.lang.String ARG_AUTH_NAME
See Also:
Constant Field Values

ARG_AUTH_LIST

public static final java.lang.String ARG_AUTH_LIST
See Also:
Constant Field Values

ARG_AUTH_DESC

public static final java.lang.String ARG_AUTH_DESC
See Also:
Constant Field Values

ARG_AUTH_IS_SSL

public static final java.lang.String ARG_AUTH_IS_SSL
See Also:
Constant Field Values

ARG_PROFILE

public static final java.lang.String ARG_PROFILE
See Also:
Constant Field Values

ARG_REQUEST_NOTES

public static final java.lang.String ARG_REQUEST_NOTES
See Also:
Constant Field Values

ARG_PROFILE_ID

public static final java.lang.String ARG_PROFILE_ID
See Also:
Constant Field Values

ARG_RENEWAL_PROFILE_ID

public static final java.lang.String ARG_RENEWAL_PROFILE_ID
See Also:
Constant Field Values

ARG_PROFILE_IS_ENABLED

public static final java.lang.String ARG_PROFILE_IS_ENABLED
See Also:
Constant Field Values

ARG_PROFILE_IS_VISIBLE

public static final java.lang.String ARG_PROFILE_IS_VISIBLE
See Also:
Constant Field Values

ARG_PROFILE_ENABLED_BY

public static final java.lang.String ARG_PROFILE_ENABLED_BY
See Also:
Constant Field Values

ARG_PROFILE_APPROVED_BY

public static final java.lang.String ARG_PROFILE_APPROVED_BY
See Also:
Constant Field Values

ARG_PROFILE_NAME

public static final java.lang.String ARG_PROFILE_NAME
See Also:
Constant Field Values

ARG_PROFILE_DESC

public static final java.lang.String ARG_PROFILE_DESC
See Also:
Constant Field Values

ARG_PROFILE_REMOTE_HOST

public static final java.lang.String ARG_PROFILE_REMOTE_HOST
See Also:
Constant Field Values

ARG_PROFILE_REMOTE_ADDR

public static final java.lang.String ARG_PROFILE_REMOTE_ADDR
See Also:
Constant Field Values

ARG_DEF_ID

public static final java.lang.String ARG_DEF_ID
See Also:
Constant Field Values

ARG_DEF_SYNTAX

public static final java.lang.String ARG_DEF_SYNTAX
See Also:
Constant Field Values

ARG_DEF_CONSTRAINT

public static final java.lang.String ARG_DEF_CONSTRAINT
See Also:
Constant Field Values

ARG_DEF_NAME

public static final java.lang.String ARG_DEF_NAME
See Also:
Constant Field Values

ARG_DEF_VAL

public static final java.lang.String ARG_DEF_VAL
See Also:
Constant Field Values

ARG_DEF_DESC

public static final java.lang.String ARG_DEF_DESC
See Also:
Constant Field Values

ARG_DEF_LIST

public static final java.lang.String ARG_DEF_LIST
See Also:
Constant Field Values

ARG_CON_DESC

public static final java.lang.String ARG_CON_DESC
See Also:
Constant Field Values

ARG_CON_LIST

public static final java.lang.String ARG_CON_LIST
See Also:
Constant Field Values

ARG_CON_NAME

public static final java.lang.String ARG_CON_NAME
See Also:
Constant Field Values

ARG_CON_VALUE

public static final java.lang.String ARG_CON_VALUE
See Also:
Constant Field Values

ARG_PROFILE_SET_ID

public static final java.lang.String ARG_PROFILE_SET_ID
See Also:
Constant Field Values

ARG_POLICY_SET_ID

public static final java.lang.String ARG_POLICY_SET_ID
See Also:
Constant Field Values

ARG_POLICY

public static final java.lang.String ARG_POLICY
See Also:
Constant Field Values

ARG_POLICY_ID

public static final java.lang.String ARG_POLICY_ID
See Also:
Constant Field Values

ARG_POLICY_SET_LIST

public static final java.lang.String ARG_POLICY_SET_LIST
See Also:
Constant Field Values

ARG_INPUT_PLUGIN_LIST

public static final java.lang.String ARG_INPUT_PLUGIN_LIST
See Also:
Constant Field Values

ARG_INPUT_PLUGIN_ID

public static final java.lang.String ARG_INPUT_PLUGIN_ID
See Also:
Constant Field Values

ARG_INPUT_PLUGIN_NAME

public static final java.lang.String ARG_INPUT_PLUGIN_NAME
See Also:
Constant Field Values

ARG_INPUT_PLUGIN_DESC

public static final java.lang.String ARG_INPUT_PLUGIN_DESC
See Also:
Constant Field Values

ARG_INPUT_LIST

public static final java.lang.String ARG_INPUT_LIST
See Also:
Constant Field Values

ARG_INPUT_ID

public static final java.lang.String ARG_INPUT_ID
See Also:
Constant Field Values

ARG_INPUT_SYNTAX

public static final java.lang.String ARG_INPUT_SYNTAX
See Also:
Constant Field Values

ARG_INPUT_CONSTRAINT

public static final java.lang.String ARG_INPUT_CONSTRAINT
See Also:
Constant Field Values

ARG_INPUT_NAME

public static final java.lang.String ARG_INPUT_NAME
See Also:
Constant Field Values

ARG_INPUT_VAL

public static final java.lang.String ARG_INPUT_VAL
See Also:
Constant Field Values

ARG_IS_RENEWAL

public static final java.lang.String ARG_IS_RENEWAL
See Also:
Constant Field Values

ARG_XML_OUTPUT

public static final java.lang.String ARG_XML_OUTPUT
See Also:
Constant Field Values

ARG_OUTPUT_LIST

public static final java.lang.String ARG_OUTPUT_LIST
See Also:
Constant Field Values

ARG_OUTPUT_ID

public static final java.lang.String ARG_OUTPUT_ID
See Also:
Constant Field Values

ARG_OUTPUT_SYNTAX

public static final java.lang.String ARG_OUTPUT_SYNTAX
See Also:
Constant Field Values

ARG_OUTPUT_CONSTRAINT

public static final java.lang.String ARG_OUTPUT_CONSTRAINT
See Also:
Constant Field Values

ARG_OUTPUT_NAME

public static final java.lang.String ARG_OUTPUT_NAME
See Also:
Constant Field Values

ARG_OUTPUT_VAL

public static final java.lang.String ARG_OUTPUT_VAL
See Also:
Constant Field Values

PROP_RESOURCEID

public static final java.lang.String PROP_RESOURCEID
See Also:
Constant Field Values

AUTHZ_SRC_LDAP

public static final java.lang.String AUTHZ_SRC_LDAP
See Also:
Constant Field Values

AUTHZ_SRC_TYPE

public static final java.lang.String AUTHZ_SRC_TYPE
See Also:
Constant Field Values

AUTHZ_CONFIG_STORE

public static final java.lang.String AUTHZ_CONFIG_STORE
See Also:
Constant Field Values

AUTHZ_SRC_XML

public static final java.lang.String AUTHZ_SRC_XML
See Also:
Constant Field Values

PROP_AUTHZ_MGR

public static final java.lang.String PROP_AUTHZ_MGR
See Also:
Constant Field Values

PROP_ACL

public static final java.lang.String PROP_ACL
See Also:
Constant Field Values

AUTHZ_MGR_BASIC

public static final java.lang.String AUTHZ_MGR_BASIC
See Also:
Constant Field Values

AUTHZ_MGR_LDAP

public static final java.lang.String AUTHZ_MGR_LDAP
See Also:
Constant Field Values

mId

protected java.lang.String mId

mGetClientCert

protected java.lang.String mGetClientCert

mAuthMgr

protected java.lang.String mAuthMgr

mAuthz

protected IAuthzSubsystem mAuthz

mAclMethod

protected java.lang.String mAclMethod

mAuthzResourceName

protected java.lang.String mAuthzResourceName

mLogger

protected ILogger mLogger

mLogCategory

protected int mLogCategory

mProfileSubId

protected java.lang.String mProfileSubId

mSignedAuditLogger

protected ILogger mSignedAuditLogger
Constructor Detail

ProfileServlet

public ProfileServlet()
Method Detail

init

public void init(javax.servlet.ServletConfig sc)
          throws javax.servlet.ServletException
initialize the servlet. Servlets implementing this method must specify the template to use as a parameter called "templatePath" in the servletConfig

Specified by:
init in interface javax.servlet.Servlet
Overrides:
init in class CMSServlet
Parameters:
sc - servlet configuration, read from the web.xml file
Throws:
javax.servlet.ServletException

escapeXML

protected java.lang.String escapeXML(java.lang.String v)

outputArgValueAsXML

protected void outputArgValueAsXML(java.io.PrintStream ps,
                                   java.lang.String name,
                                   IArgValue v)

outputThisAsXML

protected void outputThisAsXML(java.io.ByteArrayOutputStream bos,
                               ArgSet args)

outputTemplate

public void outputTemplate(javax.servlet.http.HttpServletRequest request,
                           javax.servlet.http.HttpServletResponse response,
                           ArgSet args)
                    throws EBaseException
Throws:
EBaseException

outputArgList

protected void outputArgList(java.io.PrintWriter writer,
                             java.lang.String name,
                             ArgList list)
                      throws java.io.IOException
Throws:
java.io.IOException

escapeJavaScriptString

protected java.lang.String escapeJavaScriptString(java.lang.String v)

outputArgString

protected void outputArgString(java.io.PrintWriter writer,
                               java.lang.String name,
                               ArgString str)
                        throws java.io.IOException
Throws:
java.io.IOException

outputArgSet

protected void outputArgSet(java.io.PrintWriter writer,
                            java.lang.String name,
                            ArgSet set)
                     throws java.io.IOException
Throws:
java.io.IOException

outputData

protected void outputData(java.io.PrintWriter writer,
                          ArgSet set)
                   throws java.io.IOException
Throws:
java.io.IOException

log

protected void log(int event,
                   int level,
                   java.lang.String msg)
log according to authority category.

Overrides:
log in class CMSServlet

log

protected void log(int level,
                   java.lang.String msg)
Overrides:
log in class CMSServlet

getLocale

protected java.util.Locale getLocale(javax.servlet.http.HttpServletRequest req)
Retrieves locale based on the request.

Overrides:
getLocale in class CMSServlet

renderResult

protected void renderResult(CMSRequest cmsReq)
                     throws java.io.IOException
Description copied from class: CMSServlet
Output a template. If an error occurs while outputing the template the exception template is used to display the error.

Overrides:
renderResult in class CMSServlet
Parameters:
cmsReq - the CS request
Throws:
java.io.IOException