-
Notifications
You must be signed in to change notification settings - Fork 33
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 8ac4d37
Showing
36 changed files
with
6,973 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,74 @@ | ||
# How to Run and Deploy the Java PostgreSQL Upload App # | ||
|
||
## Overview of the app ## | ||
|
||
This is a Java app that uses the following cloud services: | ||
|
||
- PostgreSQL Database | ||
|
||
This app demonstrates how to connect to a PostgreSQL database on BlueMix from a Java app. | ||
Simply upload a line-separated file of text (e.g. tweets), and it will add each line to Postgres. | ||
|
||
## Prerequisites ## | ||
|
||
Before we begin, we first need to install the command line tool that will be used to upload and manage your application. Cloud Foundry uses a tool called [**cf**](https://github.com/cloudfoundry/cf). This tool is written in Ruby, so you must have Ruby installed. If you are running on Windows, you can install Ruby from [this](http://rubyinstaller.org/downloads/) website. | ||
|
||
For Linux systems, consult your documentation for how to install the **ruby** package - for Ubuntu the command: | ||
|
||
apt-get install ruby | ||
|
||
should work for you. | ||
|
||
Once Ruby is installed, cf can be installed by using the **gem install** command: | ||
|
||
gem install cf | ||
|
||
## Download the App ## | ||
|
||
The source for this app is at GitHub so, for example, if you are using the command line you can clone the repository like this: | ||
|
||
git clone https://github.com/ibmjstart/bluemix-java-postgresql-upload.git | ||
If you want to use Eclipse to work on it, there are two ways you can get the source into Eclipse: | ||
|
||
1. Import the Eclipse project by following these instructions: | ||
1. Start by cloning the repository, as described above | ||
2. Open Eclipse | ||
3. Select File->Import | ||
4. Under the header labeled "General", click "Existing Projects Into Workspace" and click Next | ||
5. Click "Browse" next to the first text field, and navigate to the cloned repository and find the folder labeled "app" and click ok. | ||
6. Under Projects you should now see a project called "PostgreSQLUpload", make sure the checkbox next to the "PostgreSQLUpload" project is checked and then click Finish | ||
7. You should now see the "PostgreSQLUpload" project in your list of projects in Eclipse. | ||
|
||
2. Import the WAR File | ||
1. Navigate to https://github.com/ibmjstart/bluemix-java-postgresql-upload/releases | ||
2. Click the green button labeled "PostgreSQLUpload.war" and that will download the WAR file. | ||
3. Open Eclipse | ||
4. Then File->Import | ||
5. Scroll down to the "Web" section, expand that section and click WAR File then click Next. | ||
6. Click next and then Finish and the project should be imported into Eclipse | ||
|
||
## Deploying the App ## | ||
|
||
In the terminal, go in the directory of the app. The application is wrapped in a WAR file. You can directly deploy/push the WAR file using push command: | ||
|
||
cf push | ||
|
||
Just follow the instructions on the screen. You can select the default settings for deploying the app, i.e. for URL, memory reservations (512 Recommended), number of instances. You need to bind the PostgreSQL service to your application. | ||
|
||
### Binding a Service to Your App ### | ||
|
||
For the app to function correctly, you must create the service instance and bind the service instance while deploying the app. The **cf push** command will ask, "Create services for application?" Answer yes, then you will be presented with a list of services. Choose PostgreSQL from this list. Below, you can see some screenshots of what this should look like when deploying from the command line. | ||
|
||
Here are some snapshots of how to deploy the app and create services required for the app: | ||
|
||
(These are to be added) | ||
|
||
After the application is deployed using **cf push**, you can check the status of the app using the following command: **cf apps**. If the status is RUNNING, you can hit the URL in the browser and see the application is running. | ||
|
||
|
||
## Troubleshooting ## | ||
|
||
- Sometimes your app may not work as expected and debugging needs to be done. The cf command line tool can be used to assist with debugging. With the cf you can check your app's logs by typing the command **cf logs [app_name]** | ||
- When you first start using the cf tool, you may potentially have trouble logging in due to no target being set. To view the target that is set, type **cf target** and if you want to set a new target type **cf target [target_url]**. Note: The target URL will usually be in the form of http://api.xxx.tld | ||
- From time to time your app may stop working, this means it could require a restart. To do this you must first stop it by typing **cf stop**. Once the app has been stopped, you can type **cf start** and if there are no other problems your app should start. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<classpath> | ||
<classpathentry kind="src" path="src"/> | ||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> | ||
<classpathentry kind="lib" path="WebContent/WEB-INF/lib/json-simple-1.1.jar"/> | ||
<classpathentry kind="lib" path="WebContent/WEB-INF/lib/commons-fileupload-1.3.jar"/> | ||
<classpathentry kind="lib" path="WebContent/WEB-INF/lib/commons-io-2.4.jar"/> | ||
<classpathentry kind="lib" path="WebContent/WEB-INF/lib/postgresql-9.1-901.jdbc4.jar"/> | ||
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/> | ||
<classpathentry kind="con" path="org.eclipse.jst.j2ee.internal.module.container"/> | ||
<classpathentry kind="lib" path="WebContent/WEB-INF/lib/servlet-api-2.5.jar"/> | ||
<classpathentry kind="output" path="bin"/> | ||
</classpath> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<projectDescription> | ||
<name>PostgreSQLUpload</name> | ||
<comment></comment> | ||
<projects> | ||
</projects> | ||
<buildSpec> | ||
<buildCommand> | ||
<name>org.eclipse.wst.jsdt.core.javascriptValidator</name> | ||
<arguments> | ||
</arguments> | ||
</buildCommand> | ||
<buildCommand> | ||
<name>org.eclipse.wst.common.project.facet.core.builder</name> | ||
<arguments> | ||
</arguments> | ||
</buildCommand> | ||
<buildCommand> | ||
<name>org.eclipse.jdt.core.javabuilder</name> | ||
<arguments> | ||
</arguments> | ||
</buildCommand> | ||
<buildCommand> | ||
<name>org.eclipse.wst.validation.validationbuilder</name> | ||
<arguments> | ||
</arguments> | ||
</buildCommand> | ||
</buildSpec> | ||
<natures> | ||
<nature>org.eclipse.jem.workbench.JavaEMFNature</nature> | ||
<nature>org.eclipse.wst.common.modulecore.ModuleCoreNature</nature> | ||
<nature>org.eclipse.jdt.core.javanature</nature> | ||
<nature>org.eclipse.wst.common.project.facet.core.nature</nature> | ||
<nature>org.eclipse.wst.jsdt.core.jsNature</nature> | ||
</natures> | ||
</projectDescription> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<classpath> | ||
<classpathentry excluding="js/" kind="src" path="WebContent"/> | ||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.JRE_CONTAINER"/> | ||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.WebProject"> | ||
<attributes> | ||
<attribute name="hide" value="true"/> | ||
</attributes> | ||
</classpathentry> | ||
<classpathentry kind="con" path="org.eclipse.wst.jsdt.launching.baseBrowserLibrary"/> | ||
<classpathentry kind="output" path=""/> | ||
</classpath> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
eclipse.preferences.version=1 | ||
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | ||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5 | ||
org.eclipse.jdt.core.compiler.compliance=1.5 | ||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | ||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | ||
org.eclipse.jdt.core.compiler.source=1.5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0"> | ||
<wb-module deploy-name="TwitterSearch0"> | ||
<wb-resource deploy-path="/" source-path="/WebContent" tag="defaultRootSource"/> | ||
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/> | ||
<property name="java-output-path" value="/TwitterSearch0/bin"/> | ||
<property name="context-root" value="TwitterSearch0"/> | ||
</wb-module> | ||
</project-modules> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<faceted-project> | ||
<fixed facet="wst.jsdt.web"/> | ||
<installed facet="java" version="1.5"/> | ||
<installed facet="jst.web" version="2.5"/> | ||
<installed facet="wst.jsdt.web" version="1.0"/> | ||
</faceted-project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
org.eclipse.wst.jsdt.launching.baseBrowserLibrary |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Window |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
Manifest-Version: 1.0 | ||
Class-Path: | ||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> | ||
<welcome-file-list> | ||
<welcome-file>index.html</welcome-file> | ||
</welcome-file-list> | ||
<servlet> | ||
<display-name>HomeServlet</display-name> | ||
<servlet-name>HomeServlet</servlet-name> | ||
<servlet-class>com.ibm.bluemix.samples.HomeServlet</servlet-class> | ||
</servlet> | ||
<servlet-mapping> | ||
<servlet-name>HomeServlet</servlet-name> | ||
<url-pattern></url-pattern> | ||
</servlet-mapping> | ||
<servlet> | ||
<display-name>DeleteServlet</display-name> | ||
<servlet-name>DeleteServlet</servlet-name> | ||
<servlet-class>com.ibm.bluemix.samples.DeleteServlet</servlet-class> | ||
</servlet> | ||
<servlet-mapping> | ||
<servlet-name>DeleteServlet</servlet-name> | ||
<url-pattern>/delete</url-pattern> | ||
</servlet-mapping> | ||
<servlet> | ||
<display-name>UploadServlet</display-name> | ||
<servlet-name>UploadServlet</servlet-name> | ||
<servlet-class>com.ibm.bluemix.samples.UploadServlet</servlet-class> | ||
</servlet> | ||
<servlet-mapping> | ||
<servlet-name>UploadServlet</servlet-name> | ||
<url-pattern>/upload</url-pattern> | ||
</servlet-mapping> | ||
</web-app> |
Oops, something went wrong.