Author: michiel Date: 2010-05-11 19:01:07 +0200 (Tue, 11 May 2010) New Revision: 42132
Added: speeltuin/mihxil/simple/ speeltuin/mihxil/simple/jetty-env.xml speeltuin/mihxil/simple/pom.xml speeltuin/mihxil/simple/src/ speeltuin/mihxil/simple/src/main/ speeltuin/mihxil/simple/src/main/java/ speeltuin/mihxil/simple/src/main/java/org/ speeltuin/mihxil/simple/src/main/java/org/meeuw/ speeltuin/mihxil/simple/src/main/java/org/meeuw/SimpleUrlConverter.java speeltuin/mihxil/simple/src/main/webapp/ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/applications/ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/framework.xml speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/log.xml speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/log4j.xml speeltuin/mihxil/simple/src/main/webapp/WEB-INF/web.xml speeltuin/mihxil/simple/src/main/webapp/default.css speeltuin/mihxil/simple/src/main/webapp/edit/ speeltuin/mihxil/simple/src/main/webapp/edit/index.jspx speeltuin/mihxil/simple/src/main/webapp/index.jspx speeltuin/mihxil/simple/src/main/webapp/script.js speeltuin/mihxil/simple/src/main/webapp/style.css speeltuin/mihxil/simple/wget/ speeltuin/mihxil/simple/wget/ speeltuin/mihxil/simple/wget/Makefile Log: started on a very simple web-site for personal use Property changes on: speeltuin/mihxil/simple ___________________________________________________________________ Name: svn:ignore + data jetty.log Added: speeltuin/mihxil/simple/jetty-env.xml =================================================================== --- speeltuin/mihxil/simple/jetty-env.xml (rev 0) +++ speeltuin/mihxil/simple/jetty-env.xml 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,86 @@ +<?xml version="1.0"?> +<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd"> +<!--This resouce configuration points to the test database--> +<Configure class="org.mortbay.jetty.webapp.WebAppContext"> + + + <!-- + 'rapid' development of templates in the base-webapp would e.g. go with this: + --> + + <!-- + <Set name="baseResource"> + <New class="org.mortbay.resource.ResourceCollection"> + <Arg> + <Array type="java.lang.String"> + <Item>src/main/webapp</Item> + <Item>../applications/taglib/src/main/webapp</Item> + <Item>../contributions/lucene/src/main/webapp</Item> + <Item>../base-webapp/src/main/webapp</Item> + <Item>../base-webapp/target/base-webapp-2.0-SNAPSHOT</Item> + </Array> + </Arg> + </New> + </Set> + --> + <!-- + When using jetty:run use an hsql database in the directory 'data'. + --> + + <New class="org.mortbay.jetty.plus.naming.EnvEntry"> + <Arg type="java.lang.String">mmbase/mmbaseroot/database</Arg> + <Arg type="java.lang.String">hsqldb_csv</Arg> + <Arg type="boolean">true</Arg> + </New> + + <New class="org.mortbay.jetty.plus.naming.EnvEntry"> + <Arg type="java.lang.String">mmbase/mmbaseroot/datasource</Arg> + <Arg type="java.lang.String">jdbc/MMBase</Arg> + <Arg type="boolean">true</Arg> + </New> + + <New class="org.mortbay.jetty.plus.naming.Resource"> + <Arg>jdbc/MMBase</Arg> + <Arg> + <New class="com.mchange.v2.c3p0.ComboPooledDataSource"> + <Set name="driverClass">org.hsqldb.jdbcDriver</Set> + <Set name="jdbcUrl"><SystemProperty name="jdbcUrl" default="jdbc:hsqldb:file:data/mmbase" /></Set> + <Set name="user">sa</Set> + <Set name="password"></Set> + </New> + </Arg> + </New> + + + <!-- + Put all mmbase date files there too. + --> + <New class="org.mortbay.jetty.plus.naming.EnvEntry"> + <Arg type="java.lang.String">mmbase/mmbaseroot/datadir</Arg> + <Arg type="java.lang.String">data</Arg> + <Arg type="boolean">true</Arg> + </New> + + <New class="org.mortbay.jetty.plus.naming.Resource"> + <Arg>mail/Session</Arg> + <Arg> + <New class="org.mortbay.naming.factories.MailSessionReference"> + <Set name="user">[email protected]</Set> + <Set name="password">mmbase</Set> + <Set name="properties"> + <New class="java.util.Properties"> + <Put name="mail.smtp.host">smtp.gmail.com</Put> + <Put name="mail.smtp.port">465</Put> + <Put name="mail.smtp.auth">true</Put> + <Put name="mail.smtp.starttls.enable">true</Put> + <Put name="mail.smtp.socketFactory.class">javax.net.ssl.SSLSocketFactory</Put> + + </New> + </Set> + </New> + </Arg> + </New> + + +</Configure> + Added: speeltuin/mihxil/simple/pom.xml =================================================================== --- speeltuin/mihxil/simple/pom.xml (rev 0) +++ speeltuin/mihxil/simple/pom.xml 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,148 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.mmbase</groupId> + <artifactId>mmbase-parent</artifactId> + <version>1.9-SNAPSHOT</version> + </parent> + + <artifactId>simple-webapp</artifactId> + <packaging>war</packaging> + <name>MMBase Simple webapp</name> + <version>0.1-SNAPSHOT</version> + <description> + A straight forward simple website. With integrated editing, and wgetable. + </description> + + <properties> + <my.postfix>${mmbase.version.postfix}</my.postfix> + + <jdbcUrl>jdbc:hsqldb:file:data/mmbase</jdbcUrl> + <!-- E.g. use + -DjdbcUrl=jdbc:hsqldb:hsql://localhost/testb + to connect to a running hsql, e.g. needed when testing clustering + --> + </properties> + + <build> + <defaultGoal>install</defaultGoal> + <plugins> + <plugin> + <groupId>org.mortbay.jetty</groupId> + <artifactId>jetty-maven-plugin</artifactId> + <configuration> + <jettyEnvXml>${basedir}/jetty-env.xml</jettyEnvXml> + <systemProperties> + <systemProperty> + <name>jdbcUrl</name> + <value>${jdbcUrl}</value> + </systemProperty> + <systemProperty> + <name>java.awt.headless</name> + <value>true</value> + </systemProperty> + </systemProperties> + </configuration> + </plugin> + </plugins> + </build> + + <dependencies> + + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>mmbase</artifactId> + <version>${mmbase.version}</version> + <scope>provided</scope> + </dependency> + + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>base-webapp</artifactId> + <version>${mmbase.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>mmbase-resources</artifactId> + <version>${mmbase.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>mmbase-searchrelate</artifactId> + <version>${mmbase.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>mmbase-mynews</artifactId> + <version>${mmbase.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>mmbase-email</artifactId> + <version>${mmbase.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>mmbase-richtext</artifactId> + <version>${mmbase.version}</version> + <type>war</type> + </dependency> + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>mmbase-richtext-content</artifactId> + <version>2.0-SNAPSHOT</version> + <type>war</type> + </dependency> + + <dependency> + <groupId>org.mmbase</groupId> + <artifactId>mmbase-portal</artifactId> + <version>0.4-SNAPSHOT</version> + <type>war</type> + </dependency> + + <dependency> + <groupId>opensymphony</groupId> + <artifactId>oscache</artifactId> + <version>2.4</version> + <exclusions> + <exclusion> + <!-- provided by base-webapp --> + <groupId>log4j</groupId> + <artifactId>log4j</artifactId> + </exclusion> + <exclusion> + <!-- this is a bug in the oscache pom, if you ask me --> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>2.5</version> + </dependency> + + + </dependencies> + + <pluginRepositories> + + </pluginRepositories> + +</project> + Added: speeltuin/mihxil/simple/src/main/java/org/meeuw/SimpleUrlConverter.java =================================================================== --- speeltuin/mihxil/simple/src/main/java/org/meeuw/SimpleUrlConverter.java (rev 0) +++ speeltuin/mihxil/simple/src/main/java/org/meeuw/SimpleUrlConverter.java 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,121 @@ +/* + +This software is OSI Certified Open Source Software. +OSI Certified is a certification mark of the Open Source Initiative. + +The license (Mozilla version 1.0) can be read at the MMBase site. +See http://www.MMBase.org/license + +*/ +package org.meeuw; +import java.util.*; +import javax.servlet.http.HttpServletRequest; +import org.mmbase.util.transformers.CharTransformer; +import org.mmbase.util.transformers.Identifier; +import org.mmbase.framework.*; +import org.mmbase.framework.basic.*; +import org.mmbase.bridge.*; +import org.mmbase.bridge.util.*; +import org.mmbase.util.logging.*; +import org.mmbase.util.functions.*; +import org.apache.commons.lang.StringUtils; + +/** + + * + * @author Michiel Meeuwissen + * @version $Id: MyNewsUrlConverter.java 40150 2009-12-08 14:06:29Z michiel $ + * @since MMBase-1.9 + */ +public class SimpleUrlConverter implements UrlConverter { + private static final Logger log = Logging.getLoggerInstance(SimpleUrlConverter.class); + + private static final Parameter[] DEF = new Parameter[] {Parameter.REQUEST, Framework.N}; + + private static CharTransformer trans = new Identifier(); + private String nodeManager = "segments"; + + public SimpleUrlConverter(BasicFramework fw) { + } + + public void setNodeManager(String nm) { + nodeManager = nm; + } + + @Override + public int getDefaultWeight() { + return 1000; + } + + + @Override + public Parameter<?>[] getParameterDefinition() { + return DEF; + } + + + @Override + public boolean isFilteredMode(Parameters frameworkParameters) throws FrameworkException { + return true; + } + + + @Override + public Url getUrl(String path, + Map<String, ?> parameters, + Parameters frameworkParameters, + boolean escapeAmps) throws FrameworkException { + if (StringUtils.isEmpty(path)) { + Node n = frameworkParameters.get(Framework.N); + if (n == null) { + return Url.NOT; + } else { + Node parent = n.getNodeValue("parent"); + NodeList related = SearchUtil.findRelatedOrderedNodeList(parent, "segments", "index", "index.pos"); + HttpServletRequest request = frameworkParameters.get(Parameter.REQUEST); + if (related.getNode(0).getNumber() == n.getNumber()) { + return new BasicUrl(this, BasicUrlConverter.getUrl("/", parameters, request, escapeAmps)); + } else { + return new BasicUrl(this, BasicUrlConverter.getUrl("/" + trans.transform(n.getStringValue("title")) + ".html", parameters, request, escapeAmps)); + } + } + } else { + return Url.NOT; + } + } + + @Override + public Url getProcessUrl(String path, + Map<String, ?> parameters, + Parameters frameworkParameters, + boolean escapeAmps) throws FrameworkException { + return getUrl(path, parameters, frameworkParameters, escapeAmps); + } + + + + @Override + public Url getInternalUrl(String path, + Map<String, ?> params, + Parameters frameworkParameters) throws FrameworkException { + String[] p = path.split("/"); + if (p.length > 1) { + Cloud cloud = ContextProvider.getDefaultCloudContext().getCloud("mmbase"); + NodeManager nm = cloud.getNodeManager(nodeManager); + NodeQuery q = nm.createQuery(); + String like = StringUtils.removeEnd(p[1], ".html"); + Queries.addConstraint(q, Queries.createConstraint(q, "title", Queries.getOperator("LIKE"), like)); + NodeList list = nm.getList(q); + Node node; + if (list.size() > 0) { + node = list.getNode(0); + return new BasicUrl(this, "/index.jspx?n=" + node.getNumber()); + } else { + return Url.NOT; + } + } else { + return Url.NOT; + } + } + +} Added: speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/framework.xml =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/framework.xml (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/framework.xml 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,29 @@ +<?xml version="1.0" ?> +<framework + class="org.mmbase.framework.basic.BasicFramework" + xmlns="http://www.mmbase.org/xmlns/framework" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.mmbase.org/xmlns/framework + http://www.mmbase.org/xmlns/framework.xsd"> + <!-- + version: $Id: framework.xml 35123 2009-05-12 21:20:03Z michiel $ + --> + <description xml:lang="en"> + This is the BasicFramework, change my settings in 'config/framework.xml'. + </description> + + <urlconverter class="org.mmbase.framework.basic.MMBaseUrlConverter"> + <description xml:lang="en"> + The MMBase urlconverter handles about pretty URL's in /mmbase. + </description> + <param name="directory">mmbase</param> + <param name="renderJsp">/mmbase/admin/index.jsp</param> <!-- you can also do index_simple.jsp when debugging --> + </urlconverter> + + <urlconverter class="org.meeuw.SimpleUrlConverter"> + + </urlconverter> + + + +</framework> Added: speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/log.xml =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/log.xml (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/log.xml 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE logging PUBLIC "-//MMBase//DTD logging config 1.0//EN" "http://www.mmbase.org/dtd/logging_1_0.dtd"> +<logging> + <!-- example: SimpleImpl + <class>org.mmbase.util.logging.SimpleImpl</class> + <configuration>stdout,service</configuration> +--> + <class>org.mmbase.util.logging.log4j.Log4jImpl</class> + <configuration>log4j.xml</configuration> +</logging> Added: speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/log4j.xml =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/log4j.xml (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/config/log/log4j.xml 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" + [ + <!ENTITY mmlevel "org.mmbase.util.logging.log4j.Log4jLevel" > +]> +<log4j:configuration debug="false" xmlns:log4j="http://jakarta.apache.org/log4j/" + > + + <appender name="logfile" class="org.apache.log4j.ConsoleAppender" > + <param name="Target" value="System.out" /> + <param name="Encoding" value="UTF-8" /> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d{ISO8601} %M.%L %-7p %c{4} - %m%n" /> + </layout> + </appender> + + <appender name="pagedebug" class="org.apache.log4j.ConsoleAppender" > + <param name="Target" value="System.out" /> + <param name="Encoding" value="UTF-8" /> + <layout class="org.apache.log4j.PatternLayout"> + <param name="ConversionPattern" value="%d{MM-dd HH:mm:ss} PAGE %-7p %c{2} %L - %m%n" /> + </layout> + </appender> + + <logger name="org.mmbase.PAGE" additivity="false"> + <level class="&mmlevel;" value ="service" /> + <appender-ref ref="pagedebug" /> + </logger> + + <logger name="STDERR"> + <level class="&mmlevel;" value ="fatal" /> + </logger> + + <root> + <level class="&mmlevel;" value ="info" /> + <appender-ref ref="logfile" /> + </root> + +</log4j:configuration> Added: speeltuin/mihxil/simple/src/main/webapp/WEB-INF/web.xml =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/WEB-INF/web.xml (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/WEB-INF/web.xml 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,229 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + If you use an application server which does not support web-app version 2.4 (e.g. Tomcat 4.x, + Orion), then you can use web-2.3.xml in stead of this. + + Web-app 2.4 gives the possibility to use EL (Expression Language) + + $Id: web.xml 41981 2010-04-20 14:02:03Z michiel $ +--> +<web-app xmlns="http://java.sun.com/xml/ns/j2ee" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" + version="2.4"> + <description> + Simple web-app + </description> + + <display-name>Simple distro</display-name> + + + <context-param> + <param-name>copyright</param-name> + <param-value>Michiel Meeuwissen</param-value> + </context-param> + <context-param> + <param-name>startnode</param-name> + <param-value>start_node</param-value> + </context-param> + + <context-param> + <param-name>style</param-name> + <param-value>/default.css</param-value> + </context-param> + + <context-param> + <param-name>mmbase.taglib.eval_body_include</param-name> + <param-value>true</param-value> + </context-param> + + + + <context-param> + <param-name>mmbase.defaultRelationStepDirection</param-name> + <param-value>DESTINATION</param-value> <!-- Defaults to BOTH in MMBase lt 1.9.4 or this context-param is missing --> + </context-param> + + <context-param> + <param-name>mmbase.servlet.images.addfilename</param-name> + <param-value>yes</param-value> + </context-param> + <context-param> + <param-name>mmbase.servlet.attachments.addfilename</param-name> + <param-value>yes</param-value> + </context-param> + + + + <filter> + <filter-name>FrameworkFilter</filter-name> + <filter-class>org.mmbase.framework.FrameworkFilter</filter-class> + <init-param> + <param-name>excludes</param-name> + <param-value>([.]ico$|[.]jpg$|[.]gif$|[.]png$|[.]css$|[.]js$|[.]jsp$|[.]do$)|/errorpages|/editors</param-value> + </init-param> + </filter> + + <filter-mapping> + <filter-name>FrameworkFilter</filter-name> + <url-pattern>/*</url-pattern> + </filter-mapping> + + + <listener> + <!-- + Used by file servlet to detect which file can be deleted again + Sometimes files ar ecreate for a certain user only. + --> + <listener-class>org.mmbase.servlet.FileServletSessionListener</listener-class> + </listener> + + <listener> + <listener-class>org.mmbase.bridge.mock.MockSetup</listener-class> + </listener> + + + <!-- The base MMBase servlet informs about the current MMBase version --> + <servlet> + <servlet-name>version</servlet-name> + <servlet-class>org.mmbase.servlet.MMBaseServlet</servlet-class> + <load-on-startup>1</load-on-startup> + </servlet> + + <!-- The MMBase image serving servlet. --> + <servlet> + <servlet-name>images</servlet-name> + <servlet-class>org.mmbase.servlet.ImageServlet</servlet-class> + <init-param> + <!-- Expire time of original images. Cached images never expire. --> + <param-name>expire</param-name> + <!-- 10 minutes (default is one hour)--> + <param-value>600</param-value> + </init-param> + <init-param> + <!-- Whether to accepts image conversion on the URL --> + <param-name>convert</param-name> + <param-value>false</param-value> + </init-param> + <init-param> + <!-- Field of image node to use for 'last modified' --> + <param-name>lastmodifiedfield</param-name> + <param-value></param-value> + </init-param> + <load-on-startup>2</load-on-startup> + </servlet> + + <!-- The MMBase attachment serving servlet. --> + <servlet> + <servlet-name>attachments</servlet-name> + <servlet-class>org.mmbase.servlet.AttachmentServlet</servlet-class> + <init-param> + <!-- Expire time of original images. Cached images never expire. --> + <param-name>expire</param-name> + <!-- 10 minutes (default is one hour)--> + <param-value>600</param-value> + </init-param> + <init-param> + <!-- Field of attachment node to use for 'last modified' --> + <param-name>lastmodifiedfield</param-name> + <param-value></param-value> + </init-param> + <load-on-startup>3</load-on-startup> + </servlet> + + <servlet> + <servlet-name>files</servlet-name> + <servlet-class>org.mmbase.servlet.FileServlet</servlet-class> + <init-param> + <param-name>listings</param-name> + <param-value>true</param-value> + </init-param> + <init-param> + <param-name>comparator</param-name> + <param-value>org.mmbase.servlet.FileNameComparator</param-value> + </init-param> + <load-on-startup>4</load-on-startup> + </servlet> + + + <servlet-mapping> + <servlet-name>version</servlet-name> + <url-pattern>/version</url-pattern> + </servlet-mapping> + + <servlet-mapping> + <servlet-name>images</servlet-name> + <url-pattern>/images/*</url-pattern> + </servlet-mapping> + + <servlet-mapping> + <servlet-name>attachments</servlet-name> + <url-pattern>/attachments/*</url-pattern> + </servlet-mapping> + + + <servlet-mapping> + <servlet-name>files</servlet-name> + <url-pattern>/files/*</url-pattern> + </servlet-mapping> + + + + <welcome-file-list> + <welcome-file>index.jspx</welcome-file> + <welcome-file>index.jsp</welcome-file> + <welcome-file>default.jsp</welcome-file> + <welcome-file>index.html</welcome-file> + <welcome-file>index.shtml</welcome-file> + </welcome-file-list> + + <error-page> + <error-code>400</error-code> + <location>/mmbase/errorpages/400.jsp</location> + </error-page> + <error-page> + <error-code>403</error-code> + <location>/mmbase/errorpages/403.jsp</location> + </error-page> + <error-page> + <error-code>404</error-code> + <location>/mmbase/errorpages/404.jsp</location> + </error-page> + <error-page> + <exception-type>java.lang.Exception</exception-type> + <location>/mmbase/errorpages/500.jsp</location> + </error-page> + <error-page> + <error-code>503</error-code> + <location>/mmbase/errorpages/503.jsp</location> + </error-page> + + <env-entry> + <env-entry-name>mmbase/rmmci/bindname</env-entry-name> + <env-entry-type>java.lang.String</env-entry-type> + <env-entry-value>exampleremotecontext</env-entry-value> + </env-entry> + + <resource-ref> + <description> + Datasource for the MMBase Database. This datasource must be + configured in the application server. + This entry is not needed in tomcat, but jetty needs it. + </description> + <res-ref-name>jdbc/MMBase</res-ref-name> + <res-type>javax.sql.DataSource</res-type> + <res-auth>Container</res-auth> + </resource-ref> + + <!-- email app is installed, so mail could be sent --> + <resource-ref> + <description> + Mail resource for MMBase. + Don't forget the configure it with your app-server. + </description> + <res-ref-name>mail/Session</res-ref-name> + <res-type>javax.mail.Session</res-type> + <res-auth>Container</res-auth> + </resource-ref> + +</web-app> Added: speeltuin/mihxil/simple/src/main/webapp/default.css =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/default.css (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/default.css 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1 @@ +...@import url(style.css) Added: speeltuin/mihxil/simple/src/main/webapp/edit/index.jspx =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/edit/index.jspx (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/edit/index.jspx 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,13 @@ +<jsp:root version="2.0" + xmlns:jsp="http://java.sun.com/JSP/Page" + xmlns:c="http://java.sun.com/jsp/jstl/core" + xmlns:fmt="http://java.sun.com/jsp/jstl/fmt" + xmlns:rich="http://www.mmbase.org/tags/mm/rich" + xmlns:mm="http://www.mmbase.org/mmbase-taglib-2.0"> + <jsp:directive.page session="true" /> + <mm:cloud rank="basic user"> + <mm:import externid="n" /> + <mm:include page="/mmbase/kupu/mmbase/" referids="n...@objectnumber"/> + </mm:cloud> + +</jsp:root> Added: speeltuin/mihxil/simple/src/main/webapp/index.jspx =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/index.jspx (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/index.jspx 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,97 @@ +<jsp:root version="2.0" + xmlns:jsp="http://java.sun.com/JSP/Page" + xmlns:c="http://java.sun.com/jsp/jstl/core" + xmlns:fmt="http://java.sun.com/jsp/jstl/fmt" + xmlns:rich="http://www.mmbase.org/tags/mm/rich" + xmlns:mm="http://www.mmbase.org/mmbase-taglib-2.0"> + <jsp:directive.page session="false" /> + <jsp:output doctype-root-element="html" + doctype-public="-//W3C//DTD XHTML 1.1//EN" + doctype-system="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"/> + + <mm:import externid="edit" /> + <mm:content expires="${empty edit ? '' : '0'}" + type="application/xhtml+xml" + unacceptable="CRIPPLE" + postprocessor="none" language="nl"> + + <mm:cloud> + <mm:node number="${initParam.startnode}" id="start"> + <mm:relatednodescontainer role="index" type="segments" id="q"> + <mm:sortorder field="index.pos" /> + <mm:relatednodes id="segments"> + <mm:first><mm:import externid="n">${_node}</mm:import></mm:first> + </mm:relatednodes> + </mm:relatednodescontainer> + <mm:node referid="n"> + <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="nl"> + <head> + <title><mm:field name="title" /> - <mm:field node="start" name="title" /></title> + <mm:include page="/mmbase/jquery/jquery.jspx" /> + <c:if test="${edit eq 'true'}"> + <mm:include page="/mmbase/jquery/jquery-ui.jspx" /> + <mm:link page="/mmbase/jquery/css/jquery-ui-${requestScope['org.mmbase.jquery.ui.version']}.custom.css"> + <link type="text/css" href="${_}" rel="stylesheet" /> + </mm:link> + <mm:link page="/mmbase/portal/portal.css.jsp"> + <link rel='stylesheet' href='${_}' type='text/css'> </link> + </mm:link> + <mm:link page="/mmbase/portal/portal.js.jsp"> + <script type="text/javascript" src="${_}"><jsp:text> </jsp:text></script> + </mm:link> + <script type="text/javascript"> + $(function() { portal = new MMBasePortal(); }); + </script> + </c:if> + <mm:link page="/script.js"> + <script type="text/javascript" src="${_}"><jsp:text> </jsp:text></script> + </mm:link> + <mm:link page="/mmbase/style/css/mmxf.css"> + <link rel='stylesheet' href='${_}' type='text/css' /> + </mm:link> + <mm:link page="${initParam.style}"> + <link rel='stylesheet' href='${_}' type='text/css' /> + </mm:link> + <mm:link page="/mmbase/kupu/mmbase"> + <meta content="${_}" name="org.mmbase.portal.editordir" /> + </mm:link> + </head> + <body> + <div class="container"> + <mm:node node="start"> + <div class="intro editable mm_ea_objectnumber_${_node}"> + <h1><mm:field name="title" /></h1> + <h2><mm:field name="subtitle" /></h2> + <mm:field name="intro" escape="p,links" /> + <rich:field name="body" /> + </div> + </mm:node> + <div id="menu"> + <ul> + <mm:relatednodes referid="segments"> + <mm:link referids="edit?"> + <mm:frameworkparam name="n" referid="_node" /> + <li class="${n eq _node.number ? 'active' : ''}"><a href="${_}"><mm:field name="title" /></a></li> + </mm:link> + </mm:relatednodes> + </ul> + </div> + <mm:node number="${n}"> + <div class="content editable mm_ea_objectnumber_${_node}"> + <mm:field name="title"><mm:isnotempty><h2><mm:write /></h2></mm:isnotempty></mm:field> + <mm:field name="subtitle"><mm:isnotempty><h3><mm:write /></h3></mm:isnotempty></mm:field> + <mm:field name="intro"><mm:isnotempty><mm:write escape="p,links" /></mm:isnotempty></mm:field> + <rich:field name="body" /> + </div> + </mm:node> + <div class="footer"> + <p>Copyright © <mm:time time="now" format="yyyy" /> - ${initParam.copyright}</p> + </div> + </div> + </body> + </html> + </mm:node> + </mm:node> + </mm:cloud> + </mm:content> +</jsp:root> Added: speeltuin/mihxil/simple/src/main/webapp/script.js =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/script.js (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/script.js 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,24 @@ +$(function() { + var resize = function() { + $(".container").height($(window).height() - 15); + var maxWidth = $(".container").width(); + console.log(maxWidth); + $(".content").height($(".container").height() - $("#menu").height() - $(".footer").height()); + var width = maxWidth - $(".intro").width(); + console.log($(".intro").width()); + + if (width < 200) width = 200; + console.log(width); + $(".content,#menu").width(width); + $(".footer").width($(".container").width()); + $(".footer").css("top", ($(".content").height() - $(".footer").height()) + "px"); + + }; + $(window).resize(resize); + $("#menu li").click( + function(ev) { + var li = this; + document.location.href = $(li).find("a").attr("href"); + ev.preventDefault(); + }); + }); \ No newline at end of file Added: speeltuin/mihxil/simple/src/main/webapp/style.css =================================================================== --- speeltuin/mihxil/simple/src/main/webapp/style.css (rev 0) +++ speeltuin/mihxil/simple/src/main/webapp/style.css 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,87 @@ +html { + background-color: #ffa500; + font-family: Verdana; + margin: 0; + padding: 0; +} + +.container { + top: 0px; + left: 0px; + position: relative; + display: block; + max-width: 1000px; + min-width: 200px; + margin-left: auto; + margin-right: auto; + border-top: solid 1px white; + border-bottom: solid 1px white; +} + + +div.content, +div#menu { + padding: 0; + position: absolute; + left: 200px; + background-color: #fff; +} +div.content { + background-color: white; + top: 70px; + overflow: auto; +} + +div#menu { + top: 0px; + height: 70px; +} + + +div.content > * { + padding-left: 1ex; + padding-right: 1ex; +} +div.content h2 { + display: none; +} + +div#menu ul { + display: block; + padding: 0; + margin: 0; +} +div#menu ul li { + display: block; + float: left; + margin-right: 5px; + background-color: red; + width: 200px; + text-align: center; + cursor: pointer; +} +div#menu ul li.active { + background-color: white; +} +div#menu a { + text-decoration: none; +} + + +div.intro { + padding: 0; + margin: 0; + position: absolute; + left: 0px; + width: 200px; + background-color: #ffc722; +} +div.footer { + position: absolute; + height: 20px; + background-color: #ffc722; +} + +a.mm_portal_edit { + position: relative; +} \ No newline at end of file Added: speeltuin/mihxil/simple/wget/ =================================================================== Added: speeltuin/mihxil/simple/wget/Makefile =================================================================== --- speeltuin/mihxil/simple/wget/Makefile (rev 0) +++ speeltuin/mihxil/simple/wget/Makefile 2010-05-11 17:01:07 UTC (rev 42132) @@ -0,0 +1,9 @@ + + + +simple-webapp/index.html: + wget -r -k -nH http://localhost:8080/simple-webapp/ + bash -c 'for i in `find simple-webapp -name "*.html"`; do xmllint --nsclean Xb --format $$i > $$i.new ; mv $$i.new $$i ; done' + +clean: + rm -rf simple-webapp \ No newline at end of file _______________________________________________ Cvs mailing list [email protected] http://lists.mmbase.org/mailman/listinfo/cvs
