@Override
	public void doGet(SimpleServletRequest request, SimpleServletResponse response)
	{
		final String[] url=request.getUrlPath().split("/");
		if(url.length>0)
		{
			String macroName=url[url.length-1];
			final int x=macroName.indexOf('?');
			if(x>0)
				macroName=macroName.substring(0,x);
			final WebMacro W=CMClass.getWebMacro(macroName.toUpperCase());
			if(W==null)
			{
				Log.errOut("WebMacroCreamer","No web macro: '"+macroName+"'");
			}
			else
			if(!W.isAWebPath())
			{
				Log.errOut("WebMacroCreamer","Macro "+macroName+" is not a web path.");
			}
			else
			{
				final String filename=W.getFilename(request, "");
				try
				{
					try
					{
						W.setServletResponse(response, filename);
						byte[] responseData;
						if(W.preferBinary())
							responseData=W.runBinaryMacro(request, "");
						else
							responseData=W.runMacro(request, "").getBytes();
						response.getOutputStream().write(responseData);
					}
					catch (final HTTPServerException e)
					{
						try
						{
							response.getOutputStream().write(HTTPException.standardException(HTTPStatus.S500_INTERNAL_ERROR).generateOutput(request).flushToBuffer().array());
						}
						catch (final HTTPException e1)	{ }
					}
				}
				catch (final IOException e2)
				{}
			}
		}
	}