docs: replace the removed XWork logging layer with Log4j2 on the Logging page (#320) * docs: replace the removed XWork logging layer with Log4j2 on the Logging page The page documented com.opensymphony.xwork2.util.logging.LoggerFactory, extending LoggerFactory, and -Dxwork.loggerFactory. That layer was deprecated in Struts 2.5 and removed in 6.0.0: org/apache/struts2 (com/opensymphony) xwork2/util/logging has 12 files at STRUTS_2_5_33 and none from STRUTS_6_0_0 onwards, and no source in the current tags reads xwork.loggerFactory. The examples did not compile and the system property was silently ignored. Describe how logging actually works instead: Log4j2 via log4j-api/log4j-core, configured with log4j2.xml, with the log4j-jcl / log4j-slf4j-impl bridges covering third-party libraries. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> * build: ignore vendor/ so bundler's default install path stays out of git `bundle install --path vendor/bundle` — the standard way to install this site's gems without touching the system gem dir — drops ~29 gems into vendor/, which then shows up as untracked on every branch. .bundle and Gemfile.lock are already ignored; vendor/ was the missing one. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
This project is used to update the main Apache Struts website http://struts.apache.org/
See the update website documentation on how to push changes online. However as ASF is using aggressive caching, for a while one still may need to forcely reload the page (CMD+R or Shift+F5) after changes.
Site is generated by Jekyll and uses pure html either markdown format. To test website locally you can use the below command:
bundle exec jekyll serve -w --trace --host 0.0.0.0
or you can use Docker (please install it first) with one of the provided scripts:
./docker-run.fish
when running fish-shell, or:
./docker-run.sh
when running Bash or Sh.
The continuously generated website can then be accessed at http://localhost:4000
All pages are generated into the content folder.
There are two scripts used to build the image but this should be used only when Dockerfile was modified.
Some redirect rules are configured in source/.htaccess file.
When announcing a new release, update the following files together:
_config.yml - bump current_version / prev_version (and the matching *_short and release_date variables).source/announce-YYYY.md - add the announcement entry for the new release in the current year's file.source/releases.md - move the version that has just been superseded into the Prior Releases table so the page reflects what is no longer the recommended download.