HaTeMiLe

Improving accessibility for web pages.

HaTeMiLe for JEE

HaTeMiLe for JEE is a library that help developers to convert a HTML code in a code more accessible for Java EE web applications.

Accessibility solutions

Documentation

To generate the full API documentation of HaTeMiLe for JEE:

  1. Install Maven;
  2. Execute the command mvn site in HaTeMiLe for JEE directory.

Or read the API documentation here.

Import the library to your project

Maven

Step 1. Add the JitPack repository to your build file

    <repositories>
        <repository>
            <id>jitpack.io</id>
            <url>https://jitpack.io</url>
        </repository>
    </repositories>

Step 2. Add the dependency

    <dependency>
        <groupId>com.github.hatemile</groupId>
        <artifactId>hatemile-jee</artifactId>
	    <version>1.0.0</version>
    </dependency>

Gradle

Step 1. Add it in your root build.gradle at the end of repositories

    allprojects {
        repositories {
            ...
            maven { url 'https://jitpack.io' }
        }
    }

Step 2. Add the dependency

    dependencies {
            compile 'com.github.hatemile:hatemile-jee:1.0.0'
    }

sbt

Step 1. Add it in your build.sbt at the end of resolvers

    resolvers += "jitpack" at "https://jitpack.io"

Step 2. Add the dependency

    libraryDependencies += "com.github.hatemile" % "hatemile-jee" % "1.0.0"

Leiningen

Step 1. Add it in your project.clj at the end of repositories

    :repositories [["jitpack" "https://jitpack.io"]]

Step 2. Add the dependency

    :dependencies [[com.github.hatemile/hatemile-jee "1.0.0"]]

Usage

Configure the filter in the web.xml file in the web application /WEB-INF directory.

You will need the following entries in the element:

<filter>
    <filter-name>AccessibleFilter</filter-name>
    <filter-class>org.hatemile.jee.AccessibleFilter</filter-class>
    <init-param>
        <!-- HaTeMiLe for JEE paramters -->
        <param-name>provide-all-speak-properties</param-name>
        <param-value>false</param-value> 
    </init-param>
</filter>

<filter-mapping>
    <filter-name>AccessibleFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

Filter parameters

associate-all-data-cells-with-header-cells

Associate all data cells with header cells of all tables.

Value pattern: [truefalse]
associate-all-labels-with-fields

Associate all labels with fields.

Value pattern: [truefalse]
provide-all-speak-properties

Provide the CSS features of speaking and speech properties in all elements.

Value pattern: [truefalse]
display-all-alternative-text-images

Display the alternative text of all images.

Value pattern: [truefalse]
display-all-cell-headers

Display the headers of each data cell of all tables.

Value pattern: [truefalse]
display-all-drags-and-drops

Display that an elements have drag-and-drop events.

Value pattern: [truefalse]
display-all-languages

Display the language of all elements.

Value pattern: [truefalse]

Display the attributes of all links.

Value pattern: [truefalse]
display-all-roles

Display the WAI-ARIA roles of all elements.

Value pattern: [truefalse]
display-all-titles

Display the titles of all elements.

Value pattern: [truefalse]
display-all-shortcuts

Display all shortcuts.

Value pattern: [truefalse]
display-all-wai-aria-states

Display the WAI-ARIA attributes of all elements.

Value pattern: [truefalse]
make-accessible-all-click-events

Make all click events available from a keyboard.

Value pattern: [truefalse]
make-accessible-all-drag-and-drop-events

Make all Drag-and-Drop events available from a keyboard.

Value pattern: [truefalse]
make-accessible-all-hover-events

Make all hover events available from a keyboard.

Value pattern: [truefalse]
mark-all-autocomplete-fields

Mark that the fields have autocomplete.

Value pattern: [truefalse]
mark-all-range-fields

Mark that the fields have range.

Value pattern: [truefalse]
mark-all-required-fields

Mark that the fields is required.

Value pattern: [truefalse]
mark-all-invalid-fields

Mark a solution to display that a fields are invalid.

Value pattern: [truefalse]
provide-navigation-to-all-long-descriptions

Provide an alternative way to access the longs descriptions of all elements.

Value pattern: [truefalse]
provide-navigation-by-all-headings

Provide navigation by headings.

Value pattern: [truefalse]
provide-navigation-by-all-skippers

Provide navigation by content skippers.

Value pattern: [truefalse]
hide-hatemile-changes

Hide visual changes of HaTeMiLe.

Value pattern: [truefalse]
configuration

The configuration path of HaTeMiLe for Java, without properties extension.

Contributing

If you want contribute with HaTeMiLe for JEE, read contributing guidelines.