Custom Web Publishing with XML and XSLT
Table Of Contents
- Preface
- Chapter 1 Introducing Custom Web Publishing
- Chapter 2 About Custom Web Publishing with XML and XSLT
- Chapter 3 Preparing databases for Custom Web Publishing
- Chapter 4 Accessing XML data with the Web Publishing Engine
- Using Custom Web Publishing with XML
- General process for accessing XML data from the Web Publishing Engine
- About the URL syntax for XML data and container objects
- Accessing XML data via the Web Publishing Engine
- Using the fmsresultset grammar
- Using other FileMaker XML grammars
- About UTF-8 encoded data
- Using FileMaker query strings to request XML data
- Switching layouts for an XML response
- Understanding how an XML request is processed
- Using server-side and client-side processing of stylesheets
- Troubleshooting XML document access
- Chapter 5 Introduction to Custom Web Publishing with XSLT
- Chapter 6 Developing FileMaker XSLT stylesheets
- Using XSLT stylesheets with the Web Publishing Engine
- About the FileMaker XSLT Extension Function Reference
- About the FileMaker XSLT Starter Solution
- About the URL syntax for FileMaker XSLT stylesheets
- About the URL syntax for FileMaker container objects in XSLT solutions
- Using query strings in FileMaker XSLT stylesheets
- Specifying an XML grammar for a FileMaker XSLT stylesheet
- About namespaces and prefixes for FileMaker XSLT stylesheets
- Using statically defined query commands and query parameters
- Setting text encoding for requests
- Specifying an output method and encoding
- About the encoding of XSLT stylesheets
- Processing XSLT requests that do not query FileMaker Server
- Using tokens to pass information between stylesheets
- Using the FileMaker XSLT extension functions and parameters
- About the FileMaker-specific XSLT parameters set by the Web Publishing Engine
- Accessing the query information in a request
- Obtaining client information
- Using the Web Publishing Engine base URI parameter
- Using the authenticated base URI parameter
- Loading additional documents
- Using the layout information for a database in a stylesheet
- Using content buffering
- Using Web Publishing Engine sessions to store information between requests
- Using the session extension functions
- Sending email messages from the Web Publishing Engine
- Using the header functions
- Using the cookie extension functions
- Using the string manipulation extension functions
- Comparing strings using Perl 5 regular expressions
- Checking for values in a field formatted as a checkbox
- Using the date, time, and day extension functions
- Checking the error status of extension functions
- Using logging
- Using server-side processing of scripting languages
- Chapter 7 Staging, testing, and monitoring a site
- Appendix A Valid names used in query strings
- About the query commands and parameters
- Query command reference
- -dbnames (Database names) query command
- -delete (Delete record) query command
- -dup (Duplicate record) query command
- -edit (Edit record) query command
- -find, -findall, or -findany (Find records) query commands
- -findquery (Compound find) query command
- -layoutnames (Layout names) query command
- -new (New record) query command
- -process (Process XSLT stylesheets)
- -scriptnames (Script names) query command
- -view (View layout information) query command
- Query parameter reference
- -db (Database name) query parameter
- -delete.related (Portal records delete) query parameter
- -encoding (Encoding XSLT request) query parameter
- -field (Container field name) query parameter
- fieldname (Non-container field name) query parameter
- fieldname.op (Comparison operator) query parameter
- -grammar (Grammar for XSLT stylesheets) query parameter
- -lay (Layout) query parameter
- -lay.response (Switch layout for response) query parameter
- -lop (Logical operator) query parameter
- -max (Maximum records) query parameter
- -modid (Modification ID) query parameter
- -query (Compound find request) query parameter
- -recid (Record ID) query parameter
- -relatedsets.filter (Filter portal records) query parameter
- -relatedsets.max (Limit portal records) query parameter
- -script (Script) query parameter
- -script.param (Pass parameter to Script) query parameter
- -script.prefind (Script before Find) query parameter
- -script.prefind.param (Pass parameter to Script before Find) query parameter
- -script.presort (Script before Sort) query parameter
- -script.presort.param (Pass parameter to Script before Sort) query parameter
- -skip (Skip records) query parameter
- -sortfield (Sort field) query parameter
- -sortorder (Sort order) query parameter
- -stylehref (Style href) query parameter
- -styletype (Style type) query parameter
- -token.[string] (Pass values between XSLT stylesheets) query parameter
- Appendix B Error codes for Custom Web Publishing
- Index
84 FileMaker Server Custom Web Publishing with XML and XSLT
Using the web server access and error logs
Apache (Mac OS): The Apache web server generates an access log file and an error log file. The Apache access log
file, which is in the W3C Common Logfile Format by default, is a record of all incoming HTTP requests to the web
server. The Apache error log is a record of problems involving processing HTTP requests. For more information on
these log files, see the documentation for the Apache web server.
IIS (Windows): The Microsoft IIS web server generates an access log file and displays errors in the Windows Event
Viewer instead of writing them to a log file. The access log file, which is in the W3C Extended Log File Format by
default, is a record of all incoming HTTP requests to the web server. You can also use the W3C Common Logfile
Format for the access log. For more information, see the documentation for the Microsoft IIS web server.
For information on the W3C Common Logfile Format and the W3C Extended Log File Format, see the World Wide
Web Consortium website at www.w3.org.
Using the Web Publishing Engine application log
By default, the Web Publishing Engine generates an application log file that is a record of Web Publishing Engine
error, script, and user log information.
1 The error log information describes any unusual Web Publishing Engine errors that have occurred. Common
errors reported to the web user, such as “Database not open,” are not recorded.
1 The script log information describes any errors generated when web users execute scripts. For example, it lists
script steps that are skipped if they’re not web-compatible.
1 The user log messages contains messages generated by the XSLT <xsl:message> element in XSLT stylesheets.
Whenever web users access your XSLT stylesheet, information you’ve included within a <xsl:message> element
is recorded in the application log file. See
chapter 6, “Developing FileMaker XSLT stylesheets.”
The application log is named pe_application_log.txt and is located in the Logs folder in the FileMaker Server folder on
the Web Publishing Engine host.
The pe_application_log.txt file is generated if any of the following Logging options are enabled in the Web Publishing
Engine.
All three of these Logging options are enabled by default. For information on setting these options via the Admin
Console, see FileMaker
Server Help.
Note The entries in the application log are not automatically deleted, and over time the file may become very large.
To save hard disk space on your host computer, archive the application log file on a regular basis.
Using the Web Server Module error log
If the web server is unable to connect to the Web Publishing Engine, the Web Server Module generates a log file
that records any errors with its operation. This file is called web_server_module_log.txt and is located in the Logs
folder in the FileMaker Server folder on the web server host.
Logging option enabled Information recorded in pe_application_log.txt
Error Logging Any unusual Web Publishing Engine errors that have occurred. Common errors
reported to the web user, such as “Database not open,” are not recorded.
Script Logging Any errors generated when web users execute scripts. For example, it lists script
steps that are skipped if they’re not web-compatible.
User Logging Messages generated whenever web users access your Custom Web Publishing solution.