Skip to content

Commit

Permalink
Merge pull request eclipse-platform#555 from laeubi/merge_ua
Browse files Browse the repository at this point in the history
Merge platform.ua repo in platform one.
  • Loading branch information
akurtakov committed Jul 3, 2023
2 parents 78d2a8c + 0aa1d3f commit 326077e
Show file tree
Hide file tree
Showing 2,771 changed files with 300,196 additions and 1 deletion.
2 changes: 1 addition & 1 deletion .mvn/extensions.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@
<extension>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-build</artifactId>
<version>3.0.4</version>
<version>4.0.0</version>
</extension>
</extensions>
2 changes: 2 additions & 0 deletions CONTRIBUTING
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Contributing to Eclipse Platform
See https://github.com/eclipse-platform/.github/blob/main/CONTRIBUTING.md
1 change: 1 addition & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@
<module>team</module>
<module>resources</module>
<module>debug</module>
<module>ua</module>
</modules>
<build>
<pluginManagement>
Expand Down
5 changes: 5 additions & 0 deletions ua/infocenter-web/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
bin
target
.settings
.project
.classpath
38 changes: 38 additions & 0 deletions ua/infocenter-web/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Deploying the information center as a Web Archive

Using Eclipse it is possible to configure the help plugins to be deployed as a web archive (war file) which will act as a fully
functioning information center. The instructions below assume a Tomcat server has been installed, but with minor modifications
these steps should work for any full featured server.


* Clone the eclipse.platform.ua repository
``git clone https://github.com/eclipse-platform/eclipse.platform.ua/``
* In the Git repository locate the `infocenter-web` directory and underneath that there will be two directories titled `infocenter-app` and
`infocenter-product`.
* Make sure you have the "m2e - Maven Integration for Eclipse" feature installed in your Eclipse IDE.
* Import the `infocenter-web` Maven project using File->Import->Existing Project.
* Add some documentation plugins to the `infocenter-web/infocenter-app/src/main/webapp/WEB-INF/plugins` directory.
* Register the plugins in `infocenter-web/infocenter-app/src/main/webapp/WEB-INF/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info`
* Execute a Maven build in `infocenter-web`
** Either within Eclipse, right-click on `infocenter-build.launch` and select _Run As -> infocenter-build_
** Or from command-line using the command `mvn -Pbuild-individual-bundles`
* For Tomcat only. In `conf/server.xml` add `URIEncoding="UTF-8"` to the connector element, for example
``<Connector port="8080" URIEncoding="UTF-8" etc.>``
If this step is not performed search will fail if the search term contains non ASCII characters.
* Start Tomcat and see the help system start up. The default URL is <http://localhost:8080/help/>.


Notes: If you look in the `config.ini` in the `help.war` file under directory `help/WEB_INF/configuration` you will notice the
line `eclipse.product=org.eclipse.productname`. If your product has help system customizations in a product plugin you can
activate these by changing this line to point to your product plugin.

## Troubleshooting

### HTTP 404 with Message "BridgeServlet: /help/"

In the web.xml activate the init parameter `enableFrameworkControls`. This enables endpoints to control the embedded OSGi container. Call <http://localhost:8080/help/sp_test>.

You should see the message "`Servlet delegate registered - org.eclipse.equinox.http.servlet.HttpServiceServlet`". You may instead see the message "`Servlet delegate not registered.`".
This indicates that bundle activator from bundle `org.eclipse.equinox.http.servletbridge` was not started or that it accesses a different instance of class `org.eclipse.equinox.servletbridge.BridgeServlet`.

For all available framework control endpoints refer to `org.eclipse.equinox.servletbridge.BridgeServlet.serviceFrameworkControls(HttpServletRequest, HttpServletResponse)`.
80 changes: 80 additions & 0 deletions ua/infocenter-web/infocenter-app/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2020 Eclipse Foundation. All rights reserved. This program
and the accompanying materials are made available under the terms of the
Eclipse Distribution License v1.0 which accompanies this distribution, and
is available at http://www.eclipse.org/org/documents/edl-v10.php Contributors:
Karsten Thoms - initial implementation -->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.eclipse.help</groupId>
<artifactId>infocenter-parent</artifactId>
<version>4.29.0-SNAPSHOT</version>
</parent>
<artifactId>infocenter-app</artifactId>
<packaging>war</packaging>
<build>
<finalName>help</finalName>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>src/main/webapp/WEB-INF</directory>
<includes>
<include>configuration/**</include>
<include>lib/**</include>
<include>plugins/**</include>
<include>*.ini</include>
</includes>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.3.2</version>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<?m2e ignore?>
<phase>process-resources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<copy todir="src/main/webapp/WEB-INF">
<fileset
dir="../infocenter-product/target/products/infocenter/linux/gtk/x86_64/infocenter"
includes="**" excludes="artifacts.xml,p2/**"/>
</copy>
<copy todir="src/main/webapp/WEB-INF/lib">
<fileset dir="src/main/webapp/WEB-INF/plugins"
includes="*.equinox.servletbridge_*.jar" />
</copy>
<!-- org.eclipse.equinox.servletbridge.FrameworkLauncher.LAUNCH_INI -->
<move file="src/main/webapp/WEB-INF/eclipse.ini" tofile="src/main/webapp/WEB-INF/launch.ini"/>
</target>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>

<dependencies>
<dependency>
<groupId>org.eclipse.help</groupId>
<artifactId>infocenter-product</artifactId>
<version>1.0.0-SNAPSHOT</version>
<type>pom</type>
</dependency>
</dependencies>
</project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/artifacts.xml
/configuration/
/eclipse.ini
/p2/
/plugins/
/lib/
/launch.ini
57 changes: 57 additions & 0 deletions ua/infocenter-web/infocenter-app/src/main/webapp/WEB-INF/web.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2005, 2020 IBM Corporation and others. This program and
the accompanying materials are made available under the terms of the Eclipse
Public License 2.0 which accompanies this distribution, and is available
at https://www.eclipse.org/legal/epl-2.0/ SPDX-License-Identifier: EPL-2.0
Contributors: IBM Corporation - initial API and implementation -->

<web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0">
<servlet>
<servlet-name>equinoxbridgeservlet</servlet-name>
<servlet-class>org.eclipse.equinox.servletbridge.BridgeServlet</servlet-class>
<!-- org.eclipse.equinox.servletbridge and the Servlet API are exported
automatically to the underlying OSGi framework. The extendedFrameworkExports
parameter allows the specification of additional java package exports. The
format is a comma separated list of exports as specified by the "Export-Package"
bundle manifest header. For example: com.mycompany.exports; version=1.0.0,
com.mycompany.otherexports; version=1.0.0 -->
<init-param>
<param-name>extendedFrameworkExports</param-name>
<param-value></param-value>
</init-param>

<!-- You can specify your own framework launcher here. The default is:
org.eclipse.equinox.servletbridge.FrameworkLauncher <init-param> <param-name>frameworkLauncherClass</param-name>
<param-value>org.eclipse.equinox.servletbridge.FrameworkLauncher</param-value>
</init-param> -->
<!-- Uncommenting this section will enable the OSGI debugging prompt -->
<init-param>
<param-name>commandline</param-name>
<param-value>-console</param-value>
</init-param>
<init-param>
<param-name>other.info</param-name>
<param-value>org.eclipse.help</param-value>
</init-param>
<init-param>
<param-name>enableFrameworkControls</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>equinoxbridgeservlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>equinoxbridgeservlet</servlet-name>
<url-pattern>*.jsp</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
22 changes: 22 additions & 0 deletions ua/infocenter-web/infocenter-build.launch
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">
<booleanAttribute key="M2_DEBUG_OUTPUT" value="false"/>
<stringAttribute key="M2_GOALS" value=""/>
<booleanAttribute key="M2_NON_RECURSIVE" value="false"/>
<booleanAttribute key="M2_OFFLINE" value="false"/>
<stringAttribute key="M2_PROFILES" value="build-individual-bundles"/>
<listAttribute key="M2_PROPERTIES"/>
<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>
<booleanAttribute key="M2_SKIP_TESTS" value="false"/>
<intAttribute key="M2_THREADS" value="1"/>
<booleanAttribute key="M2_UPDATE_SNAPSHOTS" value="false"/>
<stringAttribute key="M2_USER_SETTINGS" value=""/>
<booleanAttribute key="M2_WORKSPACE_RESOLUTION" value="false"/>
<booleanAttribute key="org.eclipse.debug.core.ATTR_FORCE_SYSTEM_CONSOLE_ENCODING" value="false"/>
<stringAttribute key="org.eclipse.debug.core.ATTR_REFRESH_SCOPE" value="${working_set:&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&#10;&lt;resources&gt;&#10;&lt;item path=&quot;/infocenter-web&quot; type=&quot;4&quot;/&gt;&#10;&lt;/resources&gt;}"/>
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_ATTR_USE_ARGFILE" value="false"/>
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_CLASSPATH_ONLY_JAR" value="false"/>
<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11/"/>
<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${workspace_loc:/infocenter-web}"/>
</launchConfiguration>
90 changes: 90 additions & 0 deletions ua/infocenter-web/infocenter-product/infocenter.product
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<product name="Eclipse Infocenter Application" uid="infocenter" application="org.eclipse.help.base.infocenterApplication" version="1.0.0.qualifier" useFeatures="false" includeLaunchers="false">

<configIni use="default">
</configIni>

<launcherArgs>
<programArgs>osgi.*=@null
org.osgi.*=@null
eclipse.*=@null

osgi.parentClassloader=fwk
osgi.contextClassLoaderParent=fwk
org.osgi.framework.bootdelegation=*
</programArgs>
<vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
</vmArgsMac>
</launcherArgs>

<windowImages/>

<launcher name="launch">
<win useIco="false">
<bmp/>
</win>
</launcher>

<vm>
<linux include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11</linux>
<macos include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11</macos>
<windows include="false">org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11</windows>
</vm>

<plugins>
<plugin id="com.ibm.icu"/>
<plugin id="org.apache.felix.scr"/>
<plugin id="org.apache.jasper.glassfish"/>
<plugin id="org.apache.lucene.analysis-common"/>
<plugin id="org.apache.lucene.analysis-smartcn"/>
<plugin id="org.apache.lucene.core"/>
<plugin id="org.eclipse.core.contenttype"/>
<plugin id="org.eclipse.core.expressions"/>
<plugin id="org.eclipse.core.jobs"/>
<plugin id="org.eclipse.core.net"/>
<plugin id="org.eclipse.core.runtime"/>
<plugin id="org.eclipse.equinox.app"/>
<plugin id="org.eclipse.equinox.common"/>
<plugin id="org.eclipse.equinox.event"/>
<plugin id="org.eclipse.equinox.http.registry"/>
<plugin id="org.eclipse.equinox.http.servlet"/>
<plugin id="org.eclipse.equinox.http.servletbridge"/>
<plugin id="org.eclipse.equinox.jsp.jasper"/>
<plugin id="org.eclipse.equinox.jsp.jasper.registry"/>
<plugin id="org.eclipse.equinox.preferences"/>
<plugin id="org.eclipse.equinox.registry"/>
<plugin id="org.eclipse.equinox.security"/>
<plugin id="org.eclipse.equinox.servletbridge"/>
<plugin id="org.eclipse.equinox.simpleconfigurator"/>
<plugin id="org.eclipse.help"/>
<plugin id="org.eclipse.help.base"/>
<plugin id="org.eclipse.help.webapp"/>
<plugin id="org.eclipse.osgi"/>
<plugin id="org.eclipse.osgi.compatibility.state" fragment="true"/>
<plugin id="org.eclipse.osgi.services"/>
<plugin id="org.eclipse.osgi.util"/>
</plugins>

<configurations>
<plugin id="org.apache.felix.scr" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
<plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
<plugin id="org.eclipse.equinox.http.registry" autoStart="true" startLevel="0" />
<plugin id="org.eclipse.equinox.http.servletbridge" autoStart="true" startLevel="3" />
<plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
<plugin id="org.eclipse.help.webapp" autoStart="true" startLevel="0" />
<plugin id="org.eclipse.osgi" autoStart="true" startLevel="-1" />
<property name="eclipse.product" value="org.eclipse.productname" />
</configurations>

<preferencesInfo>
<targetfile overwrite="false"/>
</preferencesInfo>

<cssInfo>
</cssInfo>

</product>
56 changes: 56 additions & 0 deletions ua/infocenter-web/infocenter-product/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (c) 2020 Eclipse Foundation. All rights reserved. This program
and the accompanying materials are made available under the terms of the
Eclipse Distribution License v1.0 which accompanies this distribution, and
is available at http://www.eclipse.org/org/documents/edl-v10.php Contributors:
Karsten Thoms - initial implementation -->
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.eclipse.help</groupId>
<artifactId>infocenter-parent</artifactId>
<version>4.29.0-SNAPSHOT</version>
</parent>
<artifactId>infocenter-product</artifactId>
<packaging>eclipse-repository</packaging>
<version>1.0.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>target-platform-configuration</artifactId>
<configuration>
<environments>
<environment>
<os>linux</os>
<ws>gtk</ws>
<arch>x86_64</arch>
</environment>
</environments>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-director-plugin</artifactId>
<executions>
<execution>
<id>create-distributions</id>
<goals>
<goal>materialize-products</goal>
</goals>
</execution>
</executions>
<configuration>
<products>
<product>
<id>infocenter</id>
<rootFolder>infocenter</rootFolder>
</product>
</products>
</configuration>
</plugin>
</plugins>
</build>
</project>
Loading

0 comments on commit 326077e

Please sign in to comment.