📄 ocspservlet.java
字号:
/************************************************************************* * * * EJBCA: The OpenSource Certificate Authority * * * * This software is free software; you can redistribute it and/or * * modify it under the terms of the GNU Lesser General Public * * License as published by the Free Software Foundation; either * * version 2.1 of the License, or any later version. * * * * See terms of license at gnu.org. * * * *************************************************************************/package org.ejbca.ui.web.protocol;import java.math.BigInteger;import java.security.cert.Certificate;import java.util.Collection;import javax.ejb.EJBException;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import org.ejbca.core.ejb.ServiceLocator;import org.ejbca.core.ejb.ca.sign.ISignSessionLocal;import org.ejbca.core.ejb.ca.sign.ISignSessionLocalHome;import org.ejbca.core.ejb.ca.store.ICertificateStoreSessionLocal;import org.ejbca.core.ejb.ca.store.ICertificateStoreSessionLocalHome;import org.ejbca.core.model.ca.caadmin.CADoesntExistsException;import org.ejbca.core.model.ca.caadmin.extendedcaservices.ExtendedCAServiceNotActiveException;import org.ejbca.core.model.ca.caadmin.extendedcaservices.ExtendedCAServiceRequestException;import org.ejbca.core.model.ca.caadmin.extendedcaservices.IllegalExtendedCAServiceRequestException;import org.ejbca.core.model.ca.caadmin.extendedcaservices.OCSPCAServiceRequest;import org.ejbca.core.model.ca.caadmin.extendedcaservices.OCSPCAServiceResponse;import org.ejbca.core.model.ca.crl.RevokedCertInfo;import org.ejbca.core.model.log.Admin;/** * Servlet implementing server side of the Online Certificate Status Protocol (OCSP) * For a detailed description of OCSP refer to RFC2560. * * @web.servlet name = "OCSP" * display-name = "OCSPServlet" * description="Answers OCSP requests" * load-on-startup = "99" * * @web.servlet-mapping url-pattern = "/ocsp" * * @web.ejb-local-ref * name="ejb/CertificateStoreSessionLocal" * type="Session" * link="CertificateStoreSession" * home="org.ejbca.core.ejb.ca.store.ICertificateStoreSessionLocalHome" * local="org.ejbca.core.ejb.ca.store.ICertificateStoreSessionLocal" * * @web.ejb-local-ref * name="ejb/RSASignSessionLocal" * type="Session" * link="RSASignSession" * home="org.ejbca.core.ejb.ca.sign.ISignSessionLocalHome" * local="org.ejbca.core.ejb.ca.sign.ISignSessionLocal" * * @web.ejb-local-ref * name="ejb/CAAdminSessionLocal" * type="Session" * link="CAAdminSession" * home="org.ejbca.core.ejb.ca.caadmin.ICAAdminSessionLocalHome" * local="org.ejbca.core.ejb.ca.caadmin.ICAAdminSessionLocal" * * @web.resource-ref * name="${datasource.jndi-name-prefix}${datasource.jndi-name}" * type="javax.sql.DataSource" * auth="Container" * * @author Thomas Meckel (Ophios GmbH), Tomas Gustavsson, Lars Silven * @version $Id: OCSPServlet.java,v 1.10 2007/01/09 12:47:44 anatom Exp $ */public class OCSPServlet extends OCSPServletBase { private ICertificateStoreSessionLocal m_certStore = null; private ISignSessionLocal m_signsession = null; public void init(ServletConfig config) throws ServletException { super.init(config); } private synchronized ICertificateStoreSessionLocal getStoreSession(){ if(m_certStore == null){ try { ICertificateStoreSessionLocalHome storehome = (ICertificateStoreSessionLocalHome)ServiceLocator.getInstance().getLocalHome(ICertificateStoreSessionLocalHome.COMP_NAME); m_certStore = storehome.create(); }catch(Exception e){ throw new EJBException(e); } } return m_certStore; } private synchronized ISignSessionLocal getSignSession(){ if(m_signsession == null){ try { ISignSessionLocalHome signhome = (ISignSessionLocalHome)ServiceLocator.getInstance().getLocalHome(ISignSessionLocalHome.COMP_NAME); m_signsession = signhome.create(); }catch(Exception e){ throw new EJBException(e); } } return m_signsession; } protected Collection findCertificatesByType(Admin adm, int i, String issuerDN) { return getStoreSession().findCertificatesByType(adm, i, issuerDN); } protected Certificate findCertificateByIssuerAndSerno(Admin adm, String issuer, BigInteger serno) { return getStoreSession().findCertificateByIssuerAndSerno(adm, issuer, serno); } protected OCSPCAServiceResponse extendedService(Admin adm, int caid, OCSPCAServiceRequest request) throws CADoesntExistsException, ExtendedCAServiceRequestException, IllegalExtendedCAServiceRequestException, ExtendedCAServiceNotActiveException { return (OCSPCAServiceResponse)getSignSession().extendedService(adm, caid, request); } protected RevokedCertInfo isRevoked(Admin adm, String name, BigInteger serialNumber) { return getStoreSession().isRevoked(adm, name, serialNumber); } protected void loadPrivateKeys(Admin adm) { // not used by this servlet }} // OCSPServlet
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -