1 //
2 // ========================================================================
3 // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd.
4 // ------------------------------------------------------------------------
5 // All rights reserved. This program and the accompanying materials
6 // are made available under the terms of the Eclipse Public License v1.0
7 // and Apache License v2.0 which accompanies this distribution.
8 //
9 // The Eclipse Public License is available at
10 // http://www.eclipse.org/legal/epl-v10.html
11 //
12 // The Apache License v2.0 is available at
13 // http://www.opensource.org/licenses/apache2.0.php
14 //
15 // You may elect to redistribute this code under either of these licenses.
16 // ========================================================================
17 //
18
19 package org.eclipse.jetty.osgi.boot;
20
21 /**
22 * OSGiWebappConstants
23 *
24 *
25 * Constants (MANIFEST headers, service properties etc) associated with deploying
26 * webapps into OSGi via Jetty.
27 *
28 */
29 public class OSGiWebappConstants
30 {
31 /** service property osgi.web.symbolicname. See OSGi r4 */
32 public static final String OSGI_WEB_SYMBOLICNAME = "osgi.web.symbolicname";
33
34 /** service property osgi.web.symbolicname. See OSGi r4 */
35 public static final String OSGI_WEB_VERSION = "osgi.web.version";
36
37 /** service property osgi.web.contextpath. See OSGi r4 */
38 public static final String OSGI_WEB_CONTEXTPATH = "osgi.web.contextpath";
39
40 /** See OSGi r4 p.427 */
41 public static final String OSGI_BUNDLECONTEXT = "osgi-bundlecontext";
42
43
44
45 /** url scheme to deploy war file as bundled webapp */
46 public static final String RFC66_WAR_URL_SCHEME = "war";
47
48 /**
49 * Name of the header that defines the context path for the embedded webapp.
50 */
51 public static final String RFC66_WEB_CONTEXTPATH = "Web-ContextPath";
52
53 /**
54 * Name of the header that defines the path to the folder where the jsp
55 * files are extracted.
56 */
57 public static final String RFC66_JSP_EXTRACT_LOCATION = "Jsp-ExtractLocation";
58
59 /** Name of the servlet context attribute that points to the bundle context. */
60 public static final String RFC66_OSGI_BUNDLE_CONTEXT = "osgi-bundlecontext";
61
62 /** Name of the servlet context attribute that points to the bundle object.
63 * We can't always rely on the bundle-context as there might be no such thing. */
64 public static final String JETTY_OSGI_BUNDLE = "osgi-bundle";
65
66 /** List of relative pathes within the bundle to the jetty context files. */
67 public static final String JETTY_CONTEXT_FILE_PATH = "Jetty-ContextFilePath";
68
69 /** path within the bundle to the folder that contains the basic resources. */
70 public static final String JETTY_WAR_FOLDER_PATH = "Jetty-WarFolderPath";
71
72 /** path within a fragment hosted by a web-bundle to a folder that contains basic resources.
73 * the path is appended to the lookup path where jetty locates static resources */
74 public static final String JETTY_WAR_FRAGMENT_FOLDER_PATH = "Jetty-WarFragmentFolderPath";
75
76 /** path within a fragment hosted by a web-bundle to a folder that contains basic resources.
77 * The path is prefixed to the lookup path where jetty locates static resources:
78 * this will override static resources with the same name in the web-bundle. */
79 public static final String JETTY_WAR_PATCH_FRAGMENT_FOLDER_PATH = "Jetty-WarPatchFragmentFolderPath";
80
81
82 /** installation path of webapp bundle
83 *
84 */
85 public static final String JETTY_BUNDLE_ROOT = "bundle.root";
86 /**
87 * web app context path
88 * @deprecated see RFC66_WEB_CONTEXTPATH
89 */
90 public static final String SERVICE_PROP_CONTEXT_PATH = "contextPath";
91
92
93 /**
94 * Path to the web application base folder
95 * @deprecated see JETTY_WAR_FOLDER_PATH
96 */
97 public static final String SERVICE_PROP_WAR = "war";
98
99 /**
100 * Extra classpath
101 * @deprecated see JETTY_EXTRA_CLASSPATH
102 */
103 public static final String SERVICE_PROP_EXTRA_CLASSPATH = "extraClasspath";
104
105 public static final String JETTY_EXTRA_CLASSPATH = "Jetty-extraClasspath";
106
107 /**
108 * jetty context file path
109 * @deprecated see JETTY_CONTEXT_FILE_PATH
110 */
111 public static final String SERVICE_PROP_CONTEXT_FILE_PATH = "contextFilePath";
112
113 /**
114 * web.xml file path
115 * @deprecated see JETTY_WEB_XML_PATH
116 */
117 public static final String SERVICE_PROP_WEB_XML_PATH = "webXmlFilePath";
118
119 public static final String JETTY_WEB_XML_PATH = "Jetty-WebXmlFilePath";
120
121 /**
122 * defaultweb.xml file path
123 * @deprecated see JETTY_DEFAULT_WEB_XML_PATH
124 */
125 public static final String SERVICE_PROP_DEFAULT_WEB_XML_PATH = "defaultWebXmlFilePath";
126
127 public static final String JETTY_DEFAULT_WEB_XML_PATH = "Jetty-defaultWebXmlFilePath";
128
129 /**
130 * path to the base folder that overrides the computed bundle installation
131 * location if not null useful to install webapps or jetty context files
132 * that are in fact not embedded in a bundle
133 * @deprecated see JETTY_BUNDLE_INSTALL_LOCATION_OVERRIDE
134 */
135 public static final String SERVICE_PROP_BUNDLE_INSTALL_LOCATION_OVERRIDE = "thisBundleInstall";
136
137 public static final String JETTY_BUNDLE_INSTALL_LOCATION_OVERRIDE = "Jetty-bundleInstall";
138
139 /**
140 * Comma separated list of bundles that contain tld file used by the webapp.
141 */
142 public static final String REQUIRE_TLD_BUNDLE = "Require-TldBundle";
143 /**
144 * Comma separated list of bundles that contain tld file used by the webapp.
145 * Both the name of the manifest header and the name of the service property.
146 */
147 public static final String SERVICE_PROP_REQUIRE_TLD_BUNDLE = REQUIRE_TLD_BUNDLE;
148
149 public static final String WATERMARK = "o.e.j.o.b.watermark";
150
151 /**
152 * Set of extra dirs that must not be served by osgi webapps
153 */
154 public static final String[] DEFAULT_PROTECTED_OSGI_TARGETS = {"/osgi-inf", "/osgi-opts"};
155
156
157
158 }