Versions Compared

Key

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

...

So far, our results have used the default type, Dispatcher. The Dispatcher forwards to another web resource. Other kinds of views can be used by specifying a different result type.

Configuring Result Types

The struts-default package defines result types for the Result classes provided with the framework. If your package uses a custom result type, you can add it to your package.

Code Block
xml
xml
titlestruts.xml
<xwork>
   <include name="struts-default.xml"/>
   <package name="default" extends="struts-default">

      <result-types>
        <result-type name="Image" class="tutorial.ImageResult" />
      </result-types>

      <action name="Image" class="tutorial.Image">
        <result name="success" type="Image"/>
     </action>
   </package>
</xwork>

Configuring Global Results

It's not unusual for mappings to share a need for the same result. For example, if your application is secure, then many mappings might need to return "login" if the security check fails. Rather than define a common result in every action mapping, the framework lets you define global results.

...

Note
titleGlobal Absolutes

Because global results are searched after local results, you can override any global result mapping by creating a local result mapping. Results can indicate resources using relative or absolute URIs. Because you may not know the context in which a result is being invoked, it's best to use absolute paths for global results.

Summary

The framework offers a variety of result types. An Action can select the appropriate result by name, without actually knowing what result type will be rendered. If a result is needed by multiple action mappings, it can be defined once as a global result.

...