String modulePath = PageFlowUtils.getModulePath( request );
if ( ! moduleConfig.getPrefix().equals( modulePath ) )
{
if ( _log.isErrorEnabled() )
{
InternalStringBuilder msg = new InternalStringBuilder( "No module configuration registered for " );
msg.append( uri ).append( " (module path " ).append( modulePath ).append( ")." );
_log.error( msg.toString() );
}
if ( modulePath.length() == 0 ) modulePath = "/";
InternalUtils.sendDevTimeError( "PageFlow_NoModuleConf", null,
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, request, response,
getServletContext(), new Object[]{ uri, modulePath } );
return true;
}
//
// Make sure that the requested pageflow matches the pageflow for the directory.
//
ActionMapping beginMapping = getBeginMapping();
if ( beginMapping != null )
{
String desiredType = beginMapping.getParameter();
desiredType = desiredType.substring( desiredType.lastIndexOf( '.' ) + 1 ) + JPF_EXTENSION;
String requestedType = InternalUtils.getDecodedServletPath( request );
requestedType = requestedType.substring( requestedType.lastIndexOf( '/' ) + 1 );
if ( ! requestedType.equals( desiredType ) )
{
if ( _log.isDebugEnabled() )
{
_log.debug( "Wrong .jpf requested for this directory: got " + requestedType
+ ", expected " + desiredType );
}
if ( _log.isErrorEnabled() )
{
InternalStringBuilder msg = new InternalStringBuilder( "Wrong .jpf requested for this directory: got " );
msg.append( requestedType ).append( ", expected " ).append( desiredType ).append( '.' );
_log.error( msg.toString() );
}
InternalUtils.sendDevTimeError( "PageFlow_WrongPath", null,
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, request, response,
getServletContext(), new Object[]{ requestedType, desiredType } );