Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
SMILA 4 KinKon
What the environment looks like
Kinkon is an internet startup company from Kaiserlautern, Germany, which business’ is to ease internet security especially for children. The set of functionality provided by kinkon contains among other things a web-based portal where members could exchange information, black- and white-lists of web pages, recommendations, news, etc.
What has to be done
The aim was to develop a search component which integrates transparently and seamlessly into kinkons web-application and which provides, that the content of each area of the web-portal is searchable through a simple search slot. As the web-application is divided into at least 5 areas - forums, contact, bookmarks, groups and news - the representation of search results is also separated and presented via tabbing. Furthermore, each entry of a resultlist should contain at least one link into the corresponding entry within the application. The resultlist should also support pagination within each tab.
Where to start
The web-application is implemented using PHP. The data of the application is stored within a MSSQL-database in a first shot which has been changed to a MySQL-database afterwards. The data is fragmented in a greater set of database-tables than areas of result-sets (forums, contact, bookmarks, groups and news) and the operating system is 32bit Linux. Kinkon doesn’t develop any content by themselves, therefore the UI-design, the implementation as well as the hosting of the application is provided by third party partners.
What has been done
The starting point has been to collect and to analyze the requirements of the project aspects which are of importance for the search engine, the project environment and the infrastructure. After realizing that configuration of a standard SMILA release will not provide the needed functionality, the next steps have been to get the SMILA-sources, to set up the development environment and to create an IDE-project. In order to access the MSSQL- or MySQL-database, a new OSGi-bundle has been created to prepare the JDBC-driver for the database. The new bundle has been integrated into the development-runtime as well as into the build-/ release-configuration. A database-view for each search-area has been designed. Therefore the location of the data of importance has been analysed, the aggregation of the information has been fulfileld and the additional data to be stored in the Index has been determined. The Solr-content as well as the JDBC-Crawler has been configured. This content includes the searchable data as well as additional data only necessary to be shown within the resultlists. For the MSSQL-version, SMILA also provided the web-UI for presentation the resultlists. This also contained tabbing, paging, links, etc. The documentation of how to use this SMILA-version has been added to the distribution.
What it look like
The MySQL-based version does not contain any UI-parts any more. The starting version based on MSSQL looked like this.