5.4 Trying out the JPA middle tier
Prev | 5. The Middle Tier | Next

## 5.4 Trying out the JPA middle tier

Open a Web browser and navigate to http://localhost:8080/greenpages. Click the Submit button. Unfortunately the search will not return any results as the Web bundle is still using the stub `Directory` implementation provided by the `greenpages.app` module, rather than the JPA-based implementation that is provided by `greenpages.jpa`. This can be confirmed by using the Equinox console or the web-based admin console to examine the services being used by `greenpages.web`.

The service which is being used by the Web bundle can be changed at runtime without having to restart the application or the Web Server. This can be achieved by changing `greenpages.app` so that it no longer publishes its `Directory` implementation. As a result of this `Directory` service no longer being available, the Web bundle will automatically switch to using the JPA-based implementation.

Open the `osgi-context.xml` file in the `META-INF/spring` folder of the `greenpages.app` project and comment out the publication of the directory service:

    <!-- <osgi:service interface="greenpages.Directory" ref="directory"/> -->

Now save the updated file which will cause the application to be updated and refreshed on the server. Switch back to the Web browser and click Submit again.

This time eight results should be returned. Clicking on any of the View links will display the listing’s details. The application is now working. All that remains is to apply some best practices to the middle tier.

Prev | Up | Next
5.3 Building the JPA module | Home | 5.5 Applying best practices to the middle tier