#
# Copyright 2006 The Apache Software Foundation
# Licensed  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.
#
######################################################################
javax.portlet.PortletModeException.null=PortletMode is null

javax.portlet.PortletModeException.portlet=PortletMode is not allowed by portlet: {0}

javax.portlet.PortletModeException.portal=PortletMode not supported by portal: {0}

warning.resourcebundle.notfound=Resource not found: {0}

error.null=Null object: {0} 

error.session.illegalState=Session is in an illegal state

error.config.context.null=Error creating portlet invoker for portlet {0}.  Unable to locate context {1}.  Check your portlet configuration and ensure cross context dispatching is enabled.

error.contenttype.null=Null content-type

error.preference.readonly=Read-only preference: {0}
