Cepter comes is provided pre-configured in the default installation with the developer portal - no additional installation is needed.
Installation
The developer portal is located in the standard Ceptor (portalprotect) home directory under the folder pp/ ppserver/developerportal. This folder contains everything needed (except for the pp/lib folder) to run the web application.
The web application is part of the standard distribution.
Starting
...
Developer Portal
The developer portal is started using a Ceptor launcher. In the default installation it comes with its own launcher file pp/config/ppceptor_launch_developerportal.xml which can either be used to start up the developer portal by it self on its own server or the launch configuration can be copied into the pp/in config/ppceptor_launch.xml and it can be started can be used so the developer portal starts with the rest of Ceptor.
The standard launcher that comes with the Ceptor distribution is as such:
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
<?xml version="1.0" encoding="UTF-8"?> <!-- PortalProtectCeptor Launcher configuration --> <portalprotectlauncher port="28211" launcherclasspath="classes/launcher;lib/PortalProtectAgent.jar;extlib/logback-core-1.2.1.jar;extlib/logback-classic-1.2.1.jar;extlib/slf4j-api-1.7.24.jar" jvmstartdelay="5"> <!-- Ceptor API developerDeveloper portalPortal --> <jvm name="apideveloperportal" vmargs="-Xmx1024M -Xnoclassgc -XX:+HeapDumpOnOutOfMemoryError -XX:+ExitOnOutOfMemoryError"> <config servers="nios://localhost:21233?validateservercert=false" /> <classloader name="con" extraclasspath=""> <service name="apideveloperportal" launcherclass="io.ceptor.apimanager.developerportal.DeveloperPortalLauncher"> <property name="sessioncookiename" value="jsession_ceptordeveloperportal"/> <webserver webapp="${portalprotect.home}/ppserver/developerportal" contextpath="/" bindaddress="0.0.0.0" httpport="4848" sslport="4843" minthreads="2" maxthreads="32" maxpostsize="67108864" maxidletime="10000" responseheadersize="32768" outputbuffersize="32768" keystoretype="JKS" keystore="${portalprotect.home}/ppserver/portalprotect.key" password="changeit" /> </service> </classloader> </jvm> </portalprotectlauncher> |
...
As written above it can be merged with other launchers or started as stand alonestandalone. This is up to the individual environment setup and deployment.
Note |
---|
The default ceptor_launch.xml launcher configuration file starts the API Developer Portal on the context path /apideveloperportal - this matches the default Ceptor Gateway configuration, which forwards all calls to /apideveloperportal to the API Developer Portal server running on port 4843. |
Configuration
The developer portal requires only a few lines of configuration in the portalprotectceptor-configuration.xml in order to start up. The standard distribution comes pre-configured and can be changes as needed. Details for all configuration can be found in the configuration reference.
Code Block | ||||
---|---|---|---|---|
| ||||
<server name="apideveloperportal" type="apideveloperportal" description="Settings for API management developerportal" extends="apimanagement,applications,elasticsearch"> <group name="agent" description="Agent Settings"> <property name="email.confirmation" value="false" description="true/false value defining whether or not to send an email for confirmation during registration"/> <property name="portal.useradmin.schema" value="" description="The useradmin schema to put developer portal user in (if any)"/> <property name="sessioncontrollers" value="nios://localhost:21343?validateservercert=false" description=""/> <property name="remoteuser.support" value="false" description="true/false value to support session through the remote user from a webserver agent plugin (as of 6.0.2)"/> <property name="session.logoffurl" value="/logoff" description="Put a log off URL here to log off the session if derived from a gateway in front of the developer portal"/> <property name="session.profileurl" value="" description="Put a profile URL (or path) here to link to a profile view for a users where the session is derived from a gateway in front of the developer portal (as of 6.3)"/> <property name="sessioncookie.name" value="ppSessionId" description="The name of the session cookie to look for if placed behind a Gateway (as of 6.0.2)"/> <property name="standalone.support" value="false" description="true/false value indicating support for the developer portal to run alone and handle login by it self (as of 6.0.2)"/> </group> <group name="captcha" description="Captcha application settings"> <property name="captcha.secret.key" value="6LcBRksUAAAAAN9OTCLglrModvDFHym-h2k0MHyd" description=""/> <property name="captcha.site.key" value="6LcBRksUAAAAAENQkFW-3ptWBq_ldTwRk3iHoBMa" description="key label for test/demo: 'captor api management developer portal'"/> </group> <group name="html" description="HTML application settings"> <property name="html.noconnection" value="noconnection/noconnection.html" description="No-connection page showed on the front page"/> <property name="html.startup" value="startup/startup.html" description="Startup page showed on the front page"/> <property name="html.welcome" value="welcome/welcome.html" description="Welcome HTML showed after login"/> </group> <group name="styling" description="Other application style settings"> <property name="portal.logo" value="../devportaltheme/img/ceptor.svg" description="Logo shown atin the toplogin ofdialog theand menu"/> <property name="portal.showwelcome" value="false" description="true/false - show the welcome page after login"/> <property name="portal.title" value="<h3>Ceptor API Developer Portal</h3>" description="Title shown at the top of the menu"/> </group> </server> |
...
Other than that - the developer portal is a stand alone standalone application that can run directly as is or be installed behind a gateway for example. If the Gateway logs the user in - the frontpage front page of the developer portal will not be shown, as the gateway will handle login and deliver an authenticated session to the developer portal.
Elasticsearch configuration for the developer portal will allow the developer portal to show API Usage information from elastic search for individual API Partner applications. The default installation has this configuration enabled.