Filterguiden er en hjælp, når du skal oprette Java-miniserverfiltre, fordi du bliver ført trinvist gennem oprettelsesprocessen og få stillet outputfiler til rådighed, som du kan bruge eller revidere, før du bruger dem sammen med dit webprogram. Filtrene kan bruges på Java EE-kompatible webservere.
Sådan opretter du et filter:
- Udvid det dynamiske projekt i Java EE-perspektivet i oversigten Project Explorer.
- Højreklik på ikonen Filter, og vælg på pop op-menuen. Guiden Opret filter vises.
- Følg anvisningerne i projektguiden.
Generelle oplysninger
- Modifikationer
- I Sun Microsystems Java Servlet 2.3 Specification er det angivet, at en miniserverklasse skal være offentlig og ikke abstrakt. Du kan derfor ikke ændre disse modifikationer. Den eneste, der kan ændres, er modifikationen final.
- Grænseflader
- Der er en enkelt obligatorisk grænseflade, som filterklasserne skal implementere: javax.servlet.Filter.
Denne grænseflade leveres med pakken javax.servlet og bruges til at repræsentere
filtrets livscyklus. Grænsefladen har tre metoder: init, doFilter og destroy.
- Metoden init kaldes kun én gang af miniserveropbevaringsstedet, når den er færdig med at oprette forekomst af
filteret.
- Metoden doFilter er det sted, hvor filtreringen udføres, og kaldes, hver gang en bruger anmoder om en ressource,
f.eks. en miniserver, som filteret er knyttet til.
- Metoden destroy kaldes af miniserveropbevaringsstedet for at fortælle filteret, at det tages ud
af drift.
Grænsefladen javax.servlet.Filter er som standard anivet i feltet Grænseflader, men du kan tilføje
flere grænseflader med knappen Tilføj.
- Dialogboksen Vælg grænseflade
- Denne dialogboks vises, hvis du vil tilføje en grænseflade til dit filter.
Når du indtaster navnet på den grænseflade, du tilføjer, bliver listen over tilgængelige grænseflader i listen
Matchende elementer dynamisk opdateret, så du kun får vist de grænseflader, der matcher mønsteret. Vælg en grænseflade
for at se dens kvalifikator, og klik på OK, når du er færdig.
- Filtertilknytninger vha. mapping
- Hvis et filter skal opfange en anmodning til en miniserver, skal du:
- erklære filteret med et <filter>-element i distributionsdeskriptoren
- tilknytte filteret til miniserveren med elementet <filter-mapping>.
Du vil nogen gange have et filter skal undertiden bruges til flere miniservere. Det opnår du ved at knytte et filter til et
URL-mønster, så de anmodninger, der matcher URL-mønstret, bliver filtreret. Hvis du bruger feltet
Filtertilknytninger vha. mapping, udføres dette automatisk.
- Metodestubbe
- Eftersom hvert filter skal implementere grænsefladen javax.servlet.Filter, er
indstillingen Overtagne abstract-metoder altid markeret og kan ikke ændres.