# Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. # ------------------------------------------------------------------- # # L O G 4 J - L O G G I N G # # ------------------------------------------------------------------- log4j.file = /WEB-INF/conf/Log4j.properties # ------------------------------------------------------------------- # # M A I L S E R V E R # # ------------------------------------------------------------------- # Your mail server for outgoing email. # # Default: null # ------------------------------------------------------------------- mail.server= # ------------------------------------------------------------------- # SMTP-From header for your outgoing messages # # All failed delivery messages will be returned to this address. # If unset, these messages will be sent to the address in the # From header (standard behaviour) # # Default: null # ------------------------------------------------------------------- mail.smtp.from= # ------------------------------------------------------------------- # # M O D U L E C A C H I N G # # ------------------------------------------------------------------- # This determines whether or not to cache the modules in memory. For # development, turn this off. For production, turn this on. # # Default: false # ------------------------------------------------------------------- module.cache=false # If module.cache=true, then how large should we make the hashtables # by default. action.cache.size=20 layout.cache.size=10 navigation.cache.size=10 page.cache.size=5 screen.cache.size=50 scheduledjob.cache.size=10 # ------------------------------------------------------------------- # # M O D U L E P A C K A G E S # # ------------------------------------------------------------------- # This is the "classpath" for Turbine. In order to locate your own # modules, you should add them to this path. For example, if you have # com.company.actions, com.company.screens, com.company.navigations, # then this setting would be "com.company,org.apache.turbine.modules". # This path is searched in order. For example, Turbine comes with a # screen module named "Login". If you wanted to have your own screen # module named "Login", then you would specify the path to your # modules before the others. # # Note: org.apache.turbine.modules will always be added to the search # path. If it is not explictly added here, it will be added to the # end. # # Default: org.apache.turbine.modules # ------------------------------------------------------------------- module.packages=org.apache.turbine.modules # ------------------------------------------------------------------- # # D A T A B A S E S E T T I N G S # # ------------------------------------------------------------------- # Turbine uses the decoupled torque now!! # The database settings are now in Torque.properties # ------------------------------------------------------------------- # ------------------------------------------------------------------- # # F R A M E W O R K S E T T I N G S # # ------------------------------------------------------------------- # These are settings that control the behaviour of the framework, # such as determining whether a template system is in use, what # the default templates and screens are and session handling settings. # ------------------------------------------------------------------- # Used to set the template homepage if you are using a template # layout. This is the template that will be displayed to the user # when no specific template is requested. This is normally executed # as the first template the user sees when they access the system. # # Default: Index.vm template.homepage=Index.vm # This is the default screen to show to people when they first access # the system. This is only used if there is no value for # template.homepage. This is for use when you are not using a # templating system such as Velocity or JSP. # # Default: Login screen.homepage= # This is the template that is shown on an incorrect login attempt. # Setting this property will override any value of screen.login specfied # below. # # Default: Login.vm template.login=Login.vm # This is the page that is shown on an incorrect login attempt. It is # referenced in the LoginUser action. This is only used if there is no value # for template.login. This is for use when you are not using a # templating system such as Velocity or JSP. # # Default: Login screen.login= # This is the template that is used by the respective Template based # ErrorScreen for displaying the error. If you are not using a Template based # ErrorScreen, then this is ignored. # # Default: Error.vm template.error=Error.vm # This is the default error screen. # # Default: VelocityErrorScreen screen.error=VelocityErrorScreen # This is the screen that is displayed when the user's web page is in # an invalid state. # # Default: error.InvalidState screen.invalidstate=error.InvalidState # Set the default Doctype if you use the deprecated VelocityECSLayout. The # default Doctype can be set by using the single strings: Html40Strict, # Html40Transitional, or Html40Frameset. Additionally the default can be # supplied as two strings separated by a comma giving the DTD and URI. # # Default: ignored if not set to some value. # default.doctype=Html40Transitional # Set the components of the default Doctype for use in html documents. # # Defaults: There are no defaults - if default.html.doctype.root.element is not # set then no default doctype will be available. default.html.doctype.root.element=HTML default.html.doctype.identifier=-//W3C//DTD HTML 4.01 Transitional//EN default.html.doctype.url=http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd # This is the default action to log a user in. If you write your own # implementation of the login action, make sure that you change this # to reflect the new name. action.login=LoginUser # This is the default action to log a user out. If you write your own # implementation of the logout action, make sure that you change this # to reflect the new name. action.logout=LogoutUser # This is the default action to validate whether or not a session is # valid. For example, if you want to make sure if a user has already # logged in or not. # # Default: SessionValidator action.sessionvalidator=sessionvalidator.TemplateSessionValidator # This is the timeout in seconds for sessions. If left commented out, the # servlet container's default timeout will be left as is. # session.timeout=1800 # This is the default action that builds up the AccessControlList for # the individual users session. action.accesscontroller=AccessController # # Set this value to true if you want to be able to submit multiple # events to an Action by doing eventSubmit_do and consider # only events that have a non-empty, non-zero value. This is useful # if you submit your form with JavaScript # action.eventsubmit.needsvalue = false # # Set this value to false if you want perform your own error trapping. # Otherwise when an exception in an do or doPerform method occurs # then Turbine will hand control over to your specified error screen # action.event.bubbleexception = true # ------------------------------------------------------------------- # # J N D I C O N T E X T S # # ------------------------------------------------------------------- # This indicates whether Turbine should try to create JNDI contexts. # # Default: false # # contexts=true # These are the JNDI context properties. Each context's properties # are defined by the properties beginning with context.name. # # Default: none # # Example: The following will create a JNDI context named "name" in # the data.contexts Hashtable. It will point at the RMI registry on # localhost running on port 1099, and will use # com.sun.jndi.rmi.registry.RegistryContextFactory as the initial # context factory: # # context.name.java.naming.provider.url=rmi://localhost:1099 # context.name.java.naming.factory.initial=com.sun.jndi.rmi.registry.RegistryContextFactory # ------------------------------------------------------------------- # # P E E R S # # ------------------------------------------------------------------- # Supplies Turbine with information about the database schema, which # can simplify any required Peer classes. # # Default: org.apache.turbine.util.db.map.TurbineMapBuilder # ------------------------------------------------------------------- database.maps.builder=org.apache.turbine.util.db.map.TurbineMapBuilder # ------------------------------------------------------------------- # # M E S S A G E S # # ------------------------------------------------------------------- # Note that strings containing "," (comma) characters must backslash # escape the comma (i.e. '\,') # The message that can be displayed before a user logs in. login.message=Thank you for your visit. Please log into the system. # The message that can be displayed when no screen is defined. login.message.noscreen=There has been an error. Your session is valid but the screen variable is not defined. # The message that can be displayed when a user enters an incorrect # password or username. login.error=Sorry your username or password is incorrect! # The message that can be displayed when a user logs out. logout.message=Thank you for using the system. Please come back soon. # ------------------------------------------------------------------- # # S E C U R E S O C K E T S L A Y E R # # ------------------------------------------------------------------- # Whether the web server is able to use SSL. Links in Turbine can # check this property to determine if SSL can be used. # # Default: true # ------------------------------------------------------------------- use.ssl=true # ------------------------------------------------------------------- # # S E R V I C E S # # ------------------------------------------------------------------- # Classes for Turbine Services should be defined here. # Format: services.[name].classname=[implementing class] # # To specify properties of a service use the following syntax: # service.[name].[property]=[value] # # The order that these services is listed is important! The # order that is stated here is the order in which the services # will be initialized. Keep this is mind if you have services # that depend on other services during initialization. # ------------------------------------------------------------------- # Choose between the two available implementations of an Avalon container - ECM or YAAFI # services.AvalonComponentService.classname=org.apache.turbine.services.avaloncomponent.TurbineAvalonComponentService services.AvalonComponentService.classname=org.apache.turbine.services.avaloncomponent.TurbineYaafiComponentService services.RunDataService.classname=org.apache.turbine.services.rundata.TurbineRunDataService services.ServletService.classname=org.apache.turbine.services.servlet.TurbineServletService services.AssemblerBrokerService.classname=org.apache.turbine.services.assemblerbroker.TurbineAssemblerBrokerService services.SchedulerService.classname=org.apache.turbine.services.schedule.TurbineSchedulerService services.UniqueIdService.classname=org.apache.turbine.services.uniqueid.TurbineUniqueIdService services.SecurityService.classname=org.apache.turbine.services.security.db.DBSecurityService services.PullService.classname=org.apache.turbine.services.pull.TurbinePullService services.TemplateService.classname=org.apache.turbine.services.template.TurbineTemplateService # services.SessionService.classname=org.apache.turbine.services.session.TurbineSessionService # Turn on the appropriate template service. services.VelocityService.classname=org.apache.turbine.services.velocity.TurbineVelocityService # ------------------------------------------------------------------- # # R U N D A T A S E R V I C E # # ------------------------------------------------------------------- # Default implementations of base interfaces for request processing. # Additional configurations can be defined by using other keys # in the place of the key. # ------------------------------------------------------------------- services.RunDataService.default.run.data=org.apache.turbine.services.rundata.DefaultTurbineRunData services.RunDataService.default.parameter.parser=org.apache.fulcrum.parser.DefaultParameterParser services.RunDataService.default.cookie.parser=org.apache.fulcrum.parser.DefaultCookieParser # ------------------------------------------------------------------- # # A S S E M B L E R B R O K E R S E R V I C E # # ------------------------------------------------------------------- # A list of AssemblerFactory classes that will be registered # with TurbineAssemblerBrokerService # ------------------------------------------------------------------- services.AssemblerBrokerService.screen=org.apache.turbine.services.assemblerbroker.util.java.JavaScreenFactory # services.AssemblerBrokerService.screen=org.apache.turbine.services.assemblerbroker.util.python.PythonScreenFactory services.AssemblerBrokerService.action=org.apache.turbine.services.assemblerbroker.util.java.JavaActionFactory services.AssemblerBrokerService.layout=org.apache.turbine.services.assemblerbroker.util.java.JavaLayoutFactory services.AssemblerBrokerService.page=org.apache.turbine.services.assemblerbroker.util.java.JavaPageFactory services.AssemblerBrokerService.navigation=org.apache.turbine.services.assemblerbroker.util.java.JavaNavigationFactory services.AssemblerBrokerService.scheduledjob=org.apache.turbine.services.assemblerbroker.util.java.JavaScheduledJobFactory # ------------------------------------------------------------------- # # T E M P L A T E S E R V I C E # # ------------------------------------------------------------------- # Roughly, the number of templates in each category. # # Defaults: layout=2, navigation=10, screen=50 services.TemplateService.layout.cache.size=2 services.TemplateService.navigation.cache.size=10 services.TemplateService.screen.cache.size=50 # # These are the mapper classes responsible for the lookup of Page, Screen, Layout and Navigation classes according # to the supplied template Name. They also map template names on the Layout and Screen file names to be used. # # services.TemplateService.mapper.page.class = org.apache.turbine.services.template.mapper.DirectTemplateMapper # services.TemplateService.mapper.screen.class = org.apache.turbine.services.template.mapper.ClassMapper # services.TemplateService.mapper.layout.class = org.apache.turbine.services.template.mapper.ClassMapper # services.TemplateService.mapper.navigation.class = org.apache.turbine.services.template.mapper.ClassMapper # services.TemplateService.mapper.layout.template.class = org.apache.turbine.services.template.mapper.LayoutTemplateMapper # services.TemplateService.mapper.screen.template.class = org.apache.turbine.services.template.mapper.ScreenTemplateMapper # ------------------------------------------------------------------- # # P U L L S E R V I C E # # ------------------------------------------------------------------- # These are the properties for the Pull Service, the service # that works in conjuction with the Turbine Pull Model API. # ------------------------------------------------------------------- services.PullService.earlyInit= true # This determines whether the non-request tools are refreshed # on each request (request tools aren't ever, because they're # instantiated for the request only anyway). services.PullService.tools.per.request.refresh=true # These are tools that are placed in the context by the service # These tools will be made available to all your # templates. You list the tools in the following way: # # tool.. = # # is the tool scope: global, request, session # or persistent (see below for more details) # is the name of the tool in the context # # You can configure the tools in this way: # tool.. = # # So if you find "global", "request", "session" or "persistent" as second # part, it is a configuration to put a tool into the toolbox, else it is a # tool specific configuration. # # For example: # # tool.global.ui = org.apache.turbine.util.pull.UIManager # tool.global.mm = org.apache.turbine.util.pull.MessageManager # tool.request.link = org.apache.turbine.services.pull.tools.TemplateLink # tool.request.page = org.apache.turbine.util.template.TemplatePageAttributes # # Then: # # tool.ui.skin = default # # configures the value of "skin" for the "ui" tool. # # Tools are accessible in all templates by the given # to the tool. So for the above listings the UIManager would # be available as $ui, the MessageManager as $mm, the TemplateLink # as $link and the TemplatePageAttributes as $page. # # You should avoid using tool names called "global", "request", # "session" or "persistent" because of clashes with the possible Scopes. # # Scopes: # # global: tool is instantiated once and that instance is available # to all templates for all requests. Tool must be threadsafe. # # request: tool is instantiated once for each request (although the # PoolService is used to recycle instances). Tool need not # be threadsafe. # # session: tool is instantiated once for each user session, and is # stored in the user's temporary hashtable. Tool should be # threadsafe. # # authorized: tool is instantiated once for each user session once the # user logs in. After this, it is a normal session tool. # # persistent: tool is instantitated once for each user session once # the user logs in and is is stored in the user's permanent # hashtable. # This means for a logged in user the tool will be persisted # in the user's objectdata. Tool should be threadsafe and # Serializable. # # Defaults: none tool.request.link=org.apache.turbine.services.pull.tools.TemplateLink tool.request.page=org.apache.turbine.util.template.HtmlPageAttributes tool.request.content=org.apache.turbine.services.pull.tools.ContentTool tool.request.l10n=org.apache.turbine.services.localization.LocalizationTool # This pull tool is to allow for easy formatting of Date object into Strings tool.request.dateFormatter=org.apache.turbine.services.pull.util.DateFormatter # Use this tool if you need a place to store data that will persist between # requests. Any data stored using this tool will be stored in the session. tool.session.sessionData=org.apache.turbine.services.pull.util.SessionData # These are intake tools. # tool.request.om=org.apache.turbine.om.OMTool # tool.request.intake=org.apache.turbine.services.intake.IntakeTool # This is a tool that allows access to the scheduler service. # tool.request.scheduler=org.apache.turbine.services.SchedulerTool tool.global.ui=org.apache.turbine.services.pull.util.UIManager # The UI Manager will allow you to skin your Turbine # application using simple properties files that are # located in the WEBAPP/resources/ui/skins/ directory # hierarchy. tool.ui.skin=default # # The content tool can put its URIs through the Servlet container, # which might attach things like the jsessionid even to URIs that # are not servered by the container. # # The default behaviour was not to put these through the container. # # Set this to true if you need things like jsessionid attached to all # links generated from the $content pull tool. # tool.content.want.encoding = false # # Both the link and the content tool normally return absolute URIs # You can change this by exchanging the tool classes but this is not # really recommended. Setting these properties to true allow you # to change the behaviour if you want only relative URIs (e.g. if you # run behind a reverse proxy or a load balancer). # tool.content.want.relative = false tool.link.want.relative = false # ------------------------------------------------------------------- # # V E L O C I T Y S E R V I C E # # ------------------------------------------------------------------- services.VelocityService.earlyInit= true # The location of Velocity configuration file, relative to webapp root # These properties will override the default properties set by Velocity. # You should specify the path to the templates directories as well as # the path to the log file and they should also be relative to webapp root services.VelocityService.template.extension=vm services.VelocityService.default.page = VelocityPage services.VelocityService.default.screen=VelocityScreen services.VelocityService.default.layout = VelocityOnlyLayout services.VelocityService.default.navigation=VelocityNavigation services.VelocityService.default.error.screen = VelocityErrorScreen services.VelocityService.default.layout.template = Default.vm # # Set this to true to catch Velocity Errors and display them in the log file services.VelocityService.catch.errors = true services.VelocityService.runtime.log=/logs/velocity.log # services.VelocityService.input.encoding=UTF-8 services.VelocityService.velocimacro.library = GlobalMacros.vm services.VelocityService.velocimacro.library = macros/TurbineMacros.vm # Set the following line to true to cause velocity to automatically reload # library macro files if they change. This is useful for debugging. services.VelocityService.velocimacro.library.autoreload = false services.VelocityService.resource.loader = file services.VelocityService.file.resource.loader.description = Velocity File Resource Loader services.VelocityService.file.resource.loader.class = org.apache.velocity.runtime.resource.loader.FileResourceLoader services.VelocityService.file.resource.loader.path = /templates/app services.VelocityService.file.resource.loader.cache = false services.VelocityService.file.resource.loader.modificationCheckInterval = 2 # # Do not remove the class path loader lightly, it is used to load the TurbineMacros from VelocityOnlyLayout # services.VelocityService.resource.loader = classpath services.VelocityService.classpath.resource.loader.description = Velocity Classpath Resource Loader services.VelocityService.classpath.resource.loader.class = org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader # ------------------------------------------------------------------- # # J S P S E R V I C E # # ------------------------------------------------------------------- services.JspService.template.extension=jsp services.JspService.default.page = JspPage services.JspService.default.screen=BaseJspScreen services.JspService.default.layout = JspLayout services.JspService.default.navigation=BaseJspNavigation services.JspService.default.error.screen = JspErrorScreen services.JspService.default.layout.template = Default.jsp services.JspService.templates = /templates/app services.JspService.buffer.size = 8192 # ------------------------------------------------------------------- # # S C H E D U L E R S E R V I C E # # ------------------------------------------------------------------- # # Set enabled to true to start the scheduler. The scheduler can be # stopped and started after Turbine has been intialized. See the # javadocs for org.apache.turbine.services.schedule.TurbineScheduler # for the methods calls. # # Default = false # services.SchedulerService.enabled=false # Determines if the scheduler service should be initialized early. This # Should always be set to true!!!! services.SchedulerService.earlyInit=true # ------------------------------------------------------------------- # # S E C U R I T Y S E R V I C E # # ------------------------------------------------------------------- # # This is the class that implements the UserManager interface to # manage User objects. Default is the UserManager from the # DBSecurityService. # Override this setting if you want your User information stored # on a different medium (LDAP directory is a good example). # # Adjust this setting if you change the Setting of the SecurityService class (see above). # Default: org.apache.turbine.services.security.db.DBUserManager services.SecurityService.user.manager = org.apache.turbine.services.security.db.DBUserManager # # These are the default classes used by the Security Service to # provide User, Group, Role and Permission objects. # You want to override this setting only if you want your # implementation to provide application specific addtional # functionality. # # For LDAP use: # services.SecurityService.user.class=org.apache.turbine.services.security.ldap.LDAPUser # LDAP does not yet provide custom Group, User and Role objects so you # must use it with the default TurbineGroup, TurbineRole and # TurbinePermission objects. # # Class for User. Default: org.apache.turbine.om.security.TurbineUser services.SecurityService.user.class=org.apache.turbine.om.security.TurbineUser # Class for Group. Default: org.apache.turbine.om.security.TurbineGroup services.SecurityService.group.class=org.apache.turbine.om.security.TurbineGroup # Class for Role. Default: org.apache.turbine.om.security.TurbineRole services.SecurityService.role.class=org.apache.turbine.om.security.TurbineRole # Class for Permission. Default: org.apache.turbine.om.security.TurbinePermission services.SecurityService.permission.class=org.apache.turbine.om.security.TurbinePermission # # This is the class that implements the ACL interface. # You want to override this setting only if you want your ACL # implementation to provide application specific addtional # functionality. # # Default: org.apache.turbine.util.security.TurbineAccessControlList services.SecurityService.acl.class = org.apache.turbine.util.security.TurbineAccessControlList # # This setting is DBSecurityService specific - this class is consulted for the names # of the columns in the users' tables for the purpose of creating join queries. # If you use your own User implementation in conjunction with DBSecurityService, # it's peer class must implement org.apache.turbine.om.security.peer.UserPeer interface, # and you need to specify the name of the peer class here. # # Default: org.apache.turbine.om.security.peer.TurbineUserPeer # services.SecurityService.userPeer.class=org.apache.turbine.om.security.peer.TurbineUserPeer # # This is used by the SecurityService to make the password checking # secure. When enabled, passwords are transformed by a one-way # function into a sequence of bytes that is base64 encoded. # It is impossible to guess the plain-text form of the password # from the representation. When user logs in, the entered password # is transformed the same way and then compared with stored value. # # Default: false # services.SecurityService.secure.passwords=false # # This property lets you choose what digest algorithm will be used # for encrypting passwords. Check documentation of your JRE for # available algorithms. # # Default: SHA # services.SecurityService.secure.passwords.algorithm=SHA # Configuration for the LDAP Security Service implementation # services.SecurityService.ldap.security.athentication=simple # services.SecurityService.ldap.port= # services.SecurityService.ldap.host= # services.SecurityService.ldap.admin.username= # services.SecurityService.ldap.admin.password= # services.SecurityService.ldap.user.basesearch= # services.SecurityService.ldap.user.search.filter= # services.SecurityService.ldap.dn.attribute=userPrincipalName # services.SecurityService.ldap.provider=com.sun.jndi.ldap.LdapCtxFactory # # This property specifies the type of security authentication # # Default: simple # # services.SecurityService.ldap.security.authentication=simple # # The host name where the LDAP server is listenting. # # Default: localhost # # services.SecurityService.ldap.host=localhost # # The port number where the LDAP server is listenting. # # Default: 389 # # services.SecurityService.ldap.port=389 # # The user name of the admin user. The admin user should be able to # read from the LDAP repository. # Characteres '/' are replaced by '=' and '%' are replaced by ','. # # Default: none # # services.SecurityService.ldap.admin.username=turbineUserUniqueId/turbine%dc/example%dc/com # # The password of the admin user. # # Default: none # # services.SecurityService.ldap.admin.password=turbine # # The class name of the ldap provider. # # Default: com.sun.jndi.ldap.LdapCtxFactory # # services.SecurityService.ldap.provider=com.sun.jndi.ldap.LdapCtxFactory # # The directory base to search. # '/' are replaced by '=' and '%' are replaced by ','. # # Default: none # # services.SecurityService.ldap.basesearch=dc/example%dc/com # # The unique id. It must be an integer field and it is required only when # the users are in LDAP but the groups, roles and permissions are in the # Database. # # services.SecurityService.ldap.user.userid= # # This property maps the username with an attribute in LDAP. # # Default: turbineUserUniqueId # # services.SecurityService.ldap.user.username=turbineUserUniqueId # # This property maps the firstname with an attribute in LDAP. # # Default: turbineUserFirstName # # services.SecurityService.ldap.user.firstname=turbineUserFirstName # # This property maps the lastname with an attribute in LDAP. # # Default: turbineUserLastName # # services.SecurityService.ldap.user.lastname=turbineUserLastName # # This property maps the email with an attribute in LDAP. # # Default: turbineUserMailAddress # # services.SecurityService.ldap.user.email=turbineUserMailAddress # # This property maps the userPassword with an attribute in LDAP. # # Default: none # # services.SecurityService.ldap.user.password=userPassword # ------------------------------------------------------------------- # # A V A L O N C O M P O N E N T S E R V I C E # # ------------------------------------------------------------------- # Components implementing the Avalon lifecycle interfaces can be loaded, # configured and initialized by Turbine # ------------------------------------------------------------------- # # Name and location to the configuration file for the components. # services.AvalonComponentService.componentConfiguration = WEB-INF/conf/componentConfiguration.xml # # Name and location to the configuration file for the component roles. # services.AvalonComponentService.componentRoles = WEB-INF/conf/roleConfiguration.xml # # If you want to run Torque from the Avalon Component Service, you must load it # at startup time services.AvalonComponentService.lookup = org.apache.torque.avalon.Torque # # Other services you want to startup early # services.AvalonComponentService.lookup = org.apache.fulcrum.cache.GlobalCacheService # ------------------------------------------------------------------- # # S E S S I O N S E R V I C E # # ------------------------------------------------------------------- services.SessionService.earlyInit=true