Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Name

Breadcrumb Plugin

Publisher

Scott Stanlick

License

Open Source (ASL2)

Version

1.3

Compatibility

Struts 2.0.9+

Homepage

http://strutsschool.com

Download

http://www.strutsschool.com/downloads/downloads.action

The Struts 2 plugin plug-in

Excerpt

is designed to capture bread crumbs. It can be configured many ways

.

This Struts 2 plugin plug-in is designed to capture bread crumbs when the "breadCrumbs" interceptor is included. This pluginplug-in
can be activated by incorporating it with your registered interceptors.

...

Code Block
======================
A sample configuration
======================

<struts>

 <package name="strutsSchool" extends="tiles-default,com.strutsschool.interceptors.breadcrumbs">

	<interceptors>
		<interceptor-stack name="strutsschoolStack">
			<interceptor-ref name="defaultStack"></interceptor-ref>
			<interceptor-ref name="breadCrumbs">
				<param name="wildCardSeparator">_</param>
	    		        <param name="uniqueCrumbsOnly">true</param>
	    		        <param name="getRequestsOnly">true</param>
	    		        <param name="crumbMax">2<>24</param>
				<param name="excludeMethods">save,update,remove</param>
			</interceptor-ref>
		</interceptor-stack>
	</interceptors>

	<default-interceptor-ref name="strutsschoolStack"></default-interceptor-ref>>
</package>
	...
</struts>

The collection of captured requests are stored in session as Crumb objects which expose the following properties:

    String action
    String nameSpace
    String wildPortionOfName
    boolean uniqueCrumbsOnly
    boolean getRequestsOnly
 

behavior sensitive to the respective web request.

Code Block
====================	
A sample page region
====================
<div class="breadcrumbs" style="float: left; width: 100%;">
<span> 
	<s:iterator	value="%{#session['com.strutsschool.interceptors.breadcrumbs']}" status="status">
		<s:if test="#status.index > 0"> 
			&#187;
		</s:if>
		<s:url id="uri" action="%{action}" namespace="%{nameSpace}"/>
		<nobr><s:a href="%{uri}"><s:property value="wildPortionOfName"/></s:a></nobr>
	</s:iterator> 
</span>
</div>

You could also include screenshots by attaching the images to this page:

...


Setting

Description

Default

Possible Values

crumbMax

Maximum crumbs to manage before a new request will pop the oldest from stack.  It's a running list of crumbs.

4

int

uniqueCrumbsOnly

Determines if the same Crumb object is unique in crumb collection

true

boolean{}

getRequestsOnly

This will include only HTTP method=GET requests

true

boolean{}

wildCardSeparator

http://somesite.com/somepackage/SomeAction_print.action?

Wildcard separator used in action mappings.  e.g.

Code Block

uses the ( _ )

_

String{}

includeMethods

Plug-in utilizes MethodFilterInterceptor, so you can configure methods to be included

none

comma delimited list

excludeMethods

Maximum crumbs to manage before a new request begiwill pop the oldest from stack

Plug-in utilizes MethodFilterInterceptor, so you can configure methods to be excluded

none show,edit,destroy,save,update,remove

comma delimited list

This plugin plug-in can be installed by copying the plugin plug-in jar into your application's /WEB-INF/lib directory. No other files need to be copied or created.

...