JPedal will automatically process and display Form Objects and their contents. It will also allow you to access Form Data and customize the appearance of Forms.
Extract PDF Form data
There is a tutorial here showing how to access FormObjects and read the data (including XFA).
There is an example here for accessing Checkbox Forms which can be easily customised to any other form type.
Add standard Java listeners to any PDF form component
When JPedal displays a PDF form, it converts all the PDF form components into Swing widgets. Because these are standard Java Objects, they can be easily manipulated. In this example we add a listener to each to display when its value changes. This could easily be updating that value within a database, providing a powerful workflow solution.
Sample java code is provided in the Viewer example to allow the user to see what is happening with the PDF forms.
The code is in the method private void addFormsListeners()
Creating your own GUI components for PDF forms
A Custom Component Factory can be created to replace the default Swing set with your own widgets.