docs(dev): rewrite 15.8 Web App plugin guide to match implementation#451
Open
marevol wants to merge 1 commit into
Open
docs(dev): rewrite 15.8 Web App plugin guide to match implementation#451marevol wants to merge 1 commit into
marevol wants to merge 1 commit into
Conversation
The Web App plugin developer guide described an Action + JSP page model that does not match any real fess-webapp-* plugin and whose code examples do not compile: - Plugin JARs are mounted onto the web app classpath (WEB-INF/classes), not WEB-INF/view, so a plugin cannot serve a JSP view as shown. - The path_Example_IndexJsp constant is only generated for core Fess views, never for a plugin. - The API example used a non-existent ApiResult builder API and a base action that rejects all requests by default. Rewrite the guide (ja) and re-translate all languages to document how Web App plugins actually extend Fess via the Lasta Di container: - Adding components via app++.xml - Overriding core components via fess+<componentName>.xml - Adding REST API endpoints via fess_api++.xml and WebApiManager - The required Fess-WebAppJar manifest entry, build, and installation - A list of the published fess-webapp-* plugins Examples are grounded in fess-webapp-example, fess-webapp-v1-api, and fess-webapp-classic-api.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The 15.8 Web App plugin developer guide (
dev/webapp-plugin.rst) described anAction + JSP page model that does not match any real
fess-webapp-*plugin andwhose code examples do not compile. This PR rewrites the guide to document how
Web App plugins actually extend Fess.
Problems with the previous content
web application classpath (
WEB-INF/classes), notWEB-INF/view, so thedocumented
src/main/webapp/WEB-INF/view/.../index.jsplayout is never packagedor resolved.
path_Example_IndexJspdoes not exist for plugins. TheFessHtmlPathconstants are generated (FreeGen) only from core Fess views, so the page Action
example does not compile.
ApiResult.ApiResponsehas no.result(Map...)method (the builder order was also reversed), and the baseaction rejects all requests unless access control is overridden.
What the guide now documents
Web App plugins extend Fess by adding or replacing DI (Lasta Di) components:
app++.xmlfess+<componentName>.xmlfess_api++.xml+WebApiManager/BaseApiManagerFess-WebAppJar: trueJAR manifest entryfess-webapp-*pluginsAll examples are grounded in the real
fess-webapp-example,fess-webapp-v1-api,and
fess-webapp-classic-apiplugins.Languages
Japanese (source of truth) was rewritten and verified against the implementation;
en,de,fr,es,ko, andzh-cnwere re-translated to match.Verification
seven languages.
:doc:references) isconsistent across languages, and heading underline lengths are adequate
(East-Asian-width aware).