Skip to content

Latest commit

 

History

History
38 lines (33 loc) · 1017 Bytes

wablib.md

File metadata and controls

38 lines (33 loc) · 1017 Bytes
layout class title summary
default
Builder
-wablib FILE ( ',' FILE )*
Specify the libraries that must be included in a Web Archive Bundle (WAB) or WAR.
/**
 * Turn this normal bundle in a web and add any resources.
 *
 * @throws Exception
 */
private Jar doWab(Jar dot) throws Exception {
	String wab = getProperty(WAB);
	String wablib = getProperty(WABLIB);
	if (wab == null && wablib == null)
		return dot;

	trace("wab %s %s", wab, wablib);
	setBundleClasspath(append("WEB-INF/classes", getProperty(BUNDLE_CLASSPATH)));

	Set<String> paths = new HashSet<String>(dot.getResources().keySet());

	for (String path : paths) {
		if (path.indexOf('/') > 0 && !Character.isUpperCase(path.charAt(0))) {
			trace("wab: moving: %s", path);
			dot.rename(path, "WEB-INF/classes/" + path);
		}
	}

	Parameters clauses = parseHeader(getProperty(WABLIB));
	for (String key : clauses.keySet()) {
		File f = getFile(key);
		addWabLib(dot, f);
	}
	doIncludeResource(dot, wab);
	return dot;
}