In the steps above we disabled the modules that are not compiling so step one is to enable the module you wish to migrate, by removing it from the exclusions from the profile. When enabled a lot of compiler errors will start to reveal themselves, the second step is to resolve all compile issues until the module compiles (more information & small tutorials are available below). Once everything compiles you can startup the application & begin testing. For non JSPUI modules you should be able to use the XMLUI module to create communities, collections, items, ... if you have started from a fresh database.
: Basic class porting
Before porting it is recommended to go over: DSpace Service based api again to make sure you understand the impact.
For this tutorial I will explain how one would port the HandleServlet found in the JSPUI module. This is a fairly simple class with a couple of services.
Step Step 1: Find & declare services
Use the shortcuts of your idea to quickly traverse these issues
Things to out for when porting
Below are a few additional things to look out for when porting, these have not yet been mentioned in: DSpace Service based api#ChangestotheDSpaceapi
- DatabaseManager calls are no longer allowed from the UI, if you find a call to the DatabaseManager, see if a similar method already exists, if not create add a new service method which delegates it to the DAO layer. There should be examples enough available.
- All lists returned from database objects are persistent, if you want to remove an item from this list you can't just use list.remove() since it will give you an exception when testing. Use an iterator & remove it from the iterator