AMIS Oracle and Java Blog » Johan Tuitel https://technology.amis.nl Friends of Oracle and Java Tue, 30 Jun 2015 09:03:18 +0000 en-US hourly 1 http://wordpress.org/?v=4.2.2 Howto show and save image as blob type with seam https://technology.amis.nl/2008/12/03/howto-show-and-save-image-as-blob-type-with-seam/ https://technology.amis.nl/2008/12/03/howto-show-and-save-image-as-blob-type-with-seam/#comments Wed, 03 Dec 2008 14:49:36 +0000 http://technology.amis.nl/blog/?p=4216 Share this on .. In a project where i am working on, we needed to show an image and the image should be change when a user would like to do that. For that we need to hava an attribute in a table called photo and it has to be a blob. See below: We [...]

The post Howto show and save image as blob type with seam appeared first on AMIS Oracle and Java Blog.

]]>
Share this on .. Tweet about this on TwitterShare on LinkedInShare on FacebookShare on Google+Email this to someoneShare on TumblrBuffer this page

In a project where i am working on, we needed to show an image and the image should be change when a user would like to do that. For that we need to hava an attribute in a table called photo and it has to be a blob. See below:

We have now a photo attribute as a blob, the next thing we need to do, is to make an entity with a photo attribute. The entity is called Person and has a byte[] variable called photo. See below for an example:

@Entity
@Table(name=”PERSON”)
public class Person{
private byte[] photo = null;

@Column(name=”PHOTO”)
@Lob
public byte[] getPhoto(){
return photo;
}

public void setPhoto(byte[] photo){
this.photo = photo;
}
}

For the front-end we need to make a page with the next part(just make a simple xhtml page):
<h:panelGrid columns=”2″>
<h:panelGroup>
<s:graphicImage id=”currentImage” value=”#{person.photo}”
rendered=”#{person.photo != null}” styleClass=”vpaPhoto” />
<s:graphicImage id=”defaultImage” value=”/img/default.png”
rendered=”#{person.photo == null}” styleClass=”vpaPhoto” />
</h:panelGroup>
<s:fileUpload id=”imageUploader” data=”#{person.photo}” onchange=”submit()” styleClass=”imageUploader”  />
</h:panelGrid>

The appearance should look like this(you can choose any picture you would like for the default.png file):

Ok and now we click on browse an select an image(i’ve downloaded one from google, m_mylle.jpg)

So i’ve selected the m_mylle.jpg file and then i click open. The result is shown below:

Good luck, all suggestions and improvements are welcome.

Share this on .. Tweet about this on TwitterShare on LinkedInShare on FacebookShare on Google+Email this to someoneShare on TumblrBuffer this page

The post Howto show and save image as blob type with seam appeared first on AMIS Oracle and Java Blog.

]]>
https://technology.amis.nl/2008/12/03/howto-show-and-save-image-as-blob-type-with-seam/feed/ 1
Using database tables for authentication in ADF applications https://technology.amis.nl/2008/02/08/using-database-table-for-authentication-in-adf-applications/ https://technology.amis.nl/2008/02/08/using-database-table-for-authentication-in-adf-applications/#comments Fri, 08 Feb 2008 11:24:11 +0000 http://technology.amis.nl/blog/?p=2851 Share this on .. This article describes how to make a login feature for your application, which uses database tables for authentication and authorization. I have made this loginmodule from examples of the AMIS adf training and i have made use of the DBLoginModule class which Frank Nimphius and Duncan Mills build. First thing we [...]

The post Using database tables for authentication in ADF applications appeared first on AMIS Oracle and Java Blog.

]]>
Share this on .. Tweet about this on TwitterShare on LinkedInShare on FacebookShare on Google+Email this to someoneShare on TumblrBuffer this page

This article describes how to make a login feature for your application, which uses database tables for authentication and authorization.

I have made this loginmodule from examples of the AMIS adf training and i have made use of the DBLoginModule class which Frank Nimphius and Duncan Mills build.

First thing we need to build is the tables in the database.

Tables

The loginmodule uses three tables.
1 table for users: which we call AMIS_STAFF
1 table for roles: which we call ROLES
1 table for association between the AMIS_STAFF and the ROLES tables
So make the tables in your database. The picture bellow shows how you could make it.

Authorization

Before we configure the authorization of your webapplication we need to make a new application.

So build a new application.
– Call the new application: SecureWebApp
– Directory name: c:\projects\SecureWebApp
– Application Package Prefix: nl.amis.als.secureWebApp
– Application Template: Web Application[JSF, ADF BC]
(these are just my settings, change them if you like)

– ok now we have an application
– make a new jsp page and call it: login.jsp
– save the page in …..\public_html\security\pages
– the source of the page look like this:

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>
<%@ page contentType=”text/html;charset=UTF-8″%>
<html>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″/>
<title>Login</title>
</head>
<body style=”font-family:sans-serif; background-color:rgb(214,231,255); color:rgb(0,0,255);”>

<form action=”j_security_check” method=”post”>
<table cellspacing=”3″ cellpadding=”2″ border=”0″ width=”100%”>
<tr>
<td width=”120″>
<b style=”whitespace:nowrap”>Username</b>
</td>
<td>
<input type=”text” name=”j_username”/>
</td>
</tr>
<tr>
<td width=”120″>
<b>Password</b>
</td>
<td>
<input type=”password” name=”j_password”/>
</td>
</tr>
<tr>
<td></td>
<td>
<input type=”submit” name=”logon” value=”Sign On”/>
</td>
</tr>
</table>
</form>

<p>
(c) AMIS – (2002-2006) – <a href=”http://www.amis.nl”>http://www.amis.nl</a>
</p>
</body>
</html>

Now we have a login page. The next thing is to make the correct settings to use the page, the proper constraints and the roles.

Roles

Select the web.xml of your project and click rightmousebutton, select properties.
Select the Security Roles, add several roles, for example MANAGER, USER.
An important note is that the entered roles in your security roles, has to be exact the same as in the ROLES table we’ve made in the database.

Constraints

Select the web.xml of your project and click rightmousebutton, select properties.
Select Security Contraints, make a new constraint.
Select the new made constraint and add an Url Pattern. An example: /faces/pages/*.
The constraint is made, now we need to add roles to the constraint.
Select the Auhtorization tab and select the roles which use the constraint.

Login configuration

Select the web.xml of your project and click rightmousebutton, select properties.
Select the Login Configuration: Form-Based Authentication
Enter the next settings:
Login page: /faces/security/pages/login.jsp
Error page: /faces/security/pages/login.jsp

Authentication

Install jar file
We need to download a loginmodule, which we add a java class.
The file is available at a blog about a login configuration with an pl/sql procedure: https://technology.amis.nl/blog/?p=1462 or direct from: https://technology.amis.nl/wp-content/uploads/images/JaasSecureWebApp.zip
The file we needed is: jaasdatabaseloginmodule.zip
Download the file
Unzip the file and run the project, the project should look like this:

Ok now we are making a new java class in: oracle.sample.dbloginmodule.DBTableLM
The name of the file is: ALSDBTableLoginModule
The result should look like this:

Now we open the DBTableLoginModule.java file and copy paste all code into: ALS DBTableLoginModule.
The code we just pasted into our new class will be adjusted to our preferences.
First the need to adjust the class name: public class DBTableLoginModule implements DBLoginModule into: public class ALSDBTableLoginModule implements DBLoginModule.
The file should be correct at this point (so no file errors should occur if you run the file).
The performDbAuthentication is the only thing we adjust in the java class, the code of the method is as follow:

protected boolean performDbAuthentication(String username, char[] password)
{
boolean success = false;
Connection conn = null;
Statement stmt = null;
ResultSet rset = null;
ArrayList _dbauth = new ArrayList();

String _sqlStatement = “select roles.ROLENAME, amis_staff.USERNAME FROM roles LEFT JOIN userrole ON roles.ID = userrole.ROLE LEFT JOIN amis_staff ON userrole.EMPLOYEE = amis_staff.ID WHERE amis_staff.USERNAME = ‘” + username + “‘ AND amis_staff.PASSWORD = ‘” + new String(password) + “‘”;

try
{
try
{
//database connection from the data-sources.xml file
Context ic;
try
{
ic = new InitialContext();
DataSource dataSource = (DataSource) ic.lookup(_data_source_name);
conn = dataSource.getConnection();
}
catch (NamingException e)
{
System.err.println(e.getMessage());
}

stmt = conn.createStatement();
rset = stmt.executeQuery(_sqlStatement);

while (rset.next())
{
success = true;
String rolename = rset.getString(1);
String user = rset.getString(2);

_dbauth.add(new DBRolePrincipal(rolename));
_dbauth.add(new DBUserPrincipal(user));
_authPrincipals=(Principal[]) _dbauth.toArray(new Principal[_dbauth.size()]);

}

rset = stmt.executeQuery(_sqlStatement);
if(!rset.next())
{
FacesContext facesContext = FacesContext.getCurrentInstance();
FacesMessage message = new FacesMessage(FacesMessage.SEVERITY_ERROR,”Your username and/or password is incorrect! “,null);
facesContext.addMessage(“messages”,message);
}
}
catch (SQLException e)
{
System.err.println(e.getMessage());
}
finally
{
rset.close();
stmt.close();
conn.close();
}
}
catch (SQLException e)
{
System.err.println(e.getMessage());
}
return success;
}

Compile the project
Select DBLoginModule.deploy, rightmousebutton and click deploy to JAR file.
The jar has to be used in the library of the project.
Copy the jar file to the jdev\lib map of your jdeveloper installation. For example: C:\Program Files\jdevstudiobase10133\jdev\lib.
The jar file is ready to use, only we have to make is available in the OC4J container.
So open the application.xml file, located in JDEV_HOME\jdev\system\oracle.j2ee.10.1.3.41.57 \embedded-oc4j\config map.
Replace: <jazn provider=”XML”/> by:

<jazn provider=”XML”>
<property name=”custom.loginmodule.provider” value=”true”/>
<property name=”role.mapping.dynamic” value=”true”/>
</jazn>

And add: <library path=”C:\Program Files\jdevstudiobase10133\jdev\lib\DBLoginModule.jar”/>

Configure system-jazn-data.xml

Let’s open the system-jazn-data.xml file in an editor. The file is located in the JDEV_HOME\jdev\system\oracle.j2ee.10.1.3.41.57 \embedded-oc4j\config map.
In the file we add the next lines:
<application>
<name>current-workspace-app</name>
<login-modules>
<login-module>
<class>oracle.sample.dbloginmodule.DBTableLM.ALSDBTableLoginModule</class>
<control-flag>required</control-flag>
<options>
<option>
<name>addAllRoles</name>
<value>true</value>
</option>
<option>
<name>debug</name>
<value>true</value>
</option>
<option>
<name>data_source_name</name>
<value>jdbc/OracleDSSecurity</value>
</option>
<option>
<name>log_level</name>
<value>ALL</value>
</option>
</options>
</login-module>
</login-modules>
</application>

These settings we use to make the ALSDBTableLoginModule class available to the application.

Configure data-source.xml

Let’s open the data-source.xml file in an editor. The file is located in the JDEV_HOME\jdev\system\oracle.j2ee.10.1.3.41.57 \embedded-oc4j\config map.
In the file we add the next lines:
<managed-data-source name=”OracleDSSecurity” connection-pool-name=”Security Pool” jndi-name=”jdbc/OracleDSSecurity”/>

<connection-pool name=”Security Pool”>
<connection-factory factory-class=”oracle.jdbc.pool.OracleDataSource” user=”als” password=”als” url=”jdbc:oracle:thin:@localhost:1521:xe”/>
</connection-pool>
User is the database user, and the password is the user’s password.
The url is the url of the database.
These settings we’ve made, are necessary to make a database connection.
We are now able to login.

Share this on .. Tweet about this on TwitterShare on LinkedInShare on FacebookShare on Google+Email this to someoneShare on TumblrBuffer this page

The post Using database tables for authentication in ADF applications appeared first on AMIS Oracle and Java Blog.

]]>
https://technology.amis.nl/2008/02/08/using-database-table-for-authentication-in-adf-applications/feed/ 16
How to implement Amazon webservice in ADF https://technology.amis.nl/2007/12/10/how-to-implement-amazon-webservice-in-adf/ https://technology.amis.nl/2007/12/10/how-to-implement-amazon-webservice-in-adf/#comments Mon, 10 Dec 2007 15:45:58 +0000 http://technology.amis.nl/blog/?p=2654 Share this on .. This article demonstrates how to build an ADF application on top of the Amazon WebServices for searching books. 1. Start jdeveloper 10.1.3. 2.0(or newer) 2. Build a new Application Application name: AmazonWebservice Directory name: c:\projects\AmazonWebservice Application Package prefix: aws Application Template: Web Application[JSF, ADF BC] 3. Rightmousebutton at viewController > click new. New Gallery window [...]

The post How to implement Amazon webservice in ADF appeared first on AMIS Oracle and Java Blog.

]]>
Share this on .. Tweet about this on TwitterShare on LinkedInShare on FacebookShare on Google+Email this to someoneShare on TumblrBuffer this page

This article demonstrates how to build an ADF application on top of the Amazon WebServices for searching books.

1. Start jdeveloper 10.1.3. 2.0(or newer)

2. Build a new Application
Application name: AmazonWebservice
Directory name: c:\projects\AmazonWebservice
Application Package prefix: aws
Application Template: Web Application[JSF, ADF BC]

3. Rightmousebutton at viewController > click new. New Gallery window opens.
Select Business Tier > Web Services > Web Service Proxy.

4. You will see the Create Web Service Proxy window. Enter at the WSDL Document URL:
http://webservices.amazon.com/AWSECommerceService/AWSECommerceService.wsdl
and click next.

– The proxy model has been made.
– At step 2 click finish.
– The webservice proxy is ready to use.
– The projectstructure should look like this:

project structure
5. We are going to make a new java class file. This file represents the book object, which we need for the library.
– Rightmousebutton at viewController > click new. New Gallery window opens.
– Select general > Java Class
– Name: book
– Package: aws.item
– Extends: java.lang.Object
– Public: checked
– Generate Default Constructor: checked
– Generate Main Method: unchecked

6. We are now implementing the getters and setters for the book.java class.
Enter the following in book.java class:
private String title;
private String url;
private String isbn;
private String publisher;
private String author;
Look at the picture below.

– select in the main menu of jdeveloper > source > Generate Accessors
– select all items and click ok.
– the getters and setter will be generated.
7. Define the book constructor in book.java class, like the example below.

public book(String title, String url, String isbn , String publisher, String author) {
this.title = title;
this.url = url;
this.isbn = isbn;
this.publisher = publisher;
this.author = author;
}

8. Book.java file is ready

9. The next step for building an Amazon Webservice implementation with ADF in jdeveloper, is building a front-end to show the results from our search actions. For our front-end we will build a jsp file.
– Rightmousebutton at viewController > click new
Step 1
– Select in New gallery window Web Tier > JSF > JSF JSP
– File Name: AmazonSearch.jsp
– Directory Name: c:\projects\AmazonWebservice\ViewController\public_html
– Type: JSP_Page
– Mobile: unckeched
Step 2
– Select: Do Not Automatically Expose UI Components in a Managed Bean
Step 3
– select the libraries:
– ADF Faces Components 10_1_3_2_0
– ADF Faces HTML 10_1_3_2_0
– JSF Core 1.0
– JSF HTML 1.0
Click finish.

10. Open faces-config.xml file.

– Select the overview tab
– Select managed beans and click new.
– Enter the next settings in your create managed bean window:
– Name: AmazonWebSearch
– Class: aws.backing.AmazonSearch
– Scope: session
– Generate Class I fit Does Not Exist: checked
– An AmazonSearch.java class file is generated in the aws.backing package:

11. Return to AmazonSearch.jsp file
Open the structure window for the AmazonSearch.jsp file(the file is in design mode).
– Select tab “design” in the structure window
– Drag from the Component Palette > ADF Faces Core > PanelPage element to h:form in the structure window.

– Drag from the Component palette > ADF Faces Core > Table element to af:PanelPage
– An Insert Table window opens in your screen.
Step 1
– Select Bind now
– value: #{AmazonWebSearch.books}
– var: book
Step 2
– header: Title. Value: #{book.title}. Component: af:outputText
– header: Isbn. Value: #{book.isbn}. Component: af:outputText
– header: Book_image. Value: #{book.url}. Component: af:objectImage
Step 3
– Select Title > is sortable: checked > sort property: #{book.title}
– Select Isbn > is sortable: checked > sort property: #{book.isbn}
Step 4
– Include Table Banding: checked > select rows > Banding interval: 1
– Click finish.

– Enter in the table properties > rows: 10

– Drag from the Component Palette > ADF Faces Core > MenuBar element to the menu2 facet in the panelpage
– Drag from the Component Palette > JSF HTML > Panel grid element to the af:menuBar element. Define the number of columns for the panelGrid is 4.
– Drag from the Component Palette > ADF Faces Core > OutputText element to the panelgrid.
– Enter Selection at the value property, define color > white
– Drag from the Component Palette > ADF Faces Core > SelectOneChoice element to the panelgrid.
– Insert SelectOneChoice window opens.
– Select create list
– Item Label: Title. Item Value: title
– Item Label: Author. Item Value: author
– Item Label: Isbn. Item Value: isbn
– Item Label: Keyword. Item Value: keyword
– Make sure that the label property is empty, then click ok.
– Drag from the Component Palette > ADF Faces Core > inputText element to the panelgrid. Make sure that the label property is empty.
– Drag the Component Palette > ADF Faces Core > CommandButton element to the panelgrid. Enter Search at the text property of the commandButton object.

– Select selectOneChoice element and enter: searchCriteria at the id property.
– Select inputText element and enter: searchValue at the id property.
– Select commandButten element and enter: searchButton at the id property.

The structure of the components should look like this.

12. The next step that we are going to make is realising a connection with the AmazonSearch.java class with the components selectOneChoice, inputText and commandButton.
– Select selectOneChoice > binding(Propery Inspector) > click  .
– Binding window opens.
– Managed Bean: AmazonWebSearch
– Property > new.
– Create Property window opens
– Type searchCriteria > ok > ok

– Select inputText > binding(Propery Inspector) > click  .
– Binding window opens.
– Managed Bean: AmazonWebSearch
– Property > new.
– Create Property window opens
– Type searchValue > ok > ok

– Select AmazonSearch.java and insert:
ArrayList books = new ArrayList();
See example:

– ArrayList will be red underlined, import java.util.ArrayList package.
– We need the get and set method for the books ArrayList. Select in the main menu source > Generate Accessors, then select books item and click ok.

Copy and paste the search() method in the search.java class.

public String search() throws Exception
{
String criteria = (String) searchCriteria.getValue();
String value = (String) searchValue.getValue();

books = searchBooks(criteria, value);
this.setBooks(books);
return null;
}
Open the AmazonSearch.jsp file
– Select commandButton > action(Property Inspector)
– Enter the value: #{AmazonWebSearch.search}
The EL expression uses the method search() in the AmazonSearch.java class.

13. We must now implement the methods for obtaining results of the search action we will do in our AmazonSearch.jsp page. We’ve already made a method which is used by the commandButton.
14. The method search() triggers the method searchBooks(). This method has two parameters. The first parameter is the selected criteria in the jsp file and the second parameter is the entered value by the user.
– The for loop within the method is used to call different pages. Amazon has restricted the maximum page at 400.
– An if statement is used to determine which method must be called to get the proper data.
– The rest of the method is used to put the book items in an ArrayList.

Copy and paste the method displayed below in the AmazonSearch.java file:
public ArrayList searchBooks(String criteria, String value) throws Exception
{
ArrayList books = new ArrayList();
ItemsType2 [] itemsArray;
int pageNo = 1;

for(int counter = 1; counter < pageNo + 1; counter++)
{
if(!criteria.equals(“isbn”))
itemsArray = OtherSearch(criteria, value, counter);
else
itemsArray = ISBNSearch(value);

if ( itemsArray == null )
throw new Exception ( “Server Error – empty response!” );

if ( itemsArray[0].getRequest().getErrors() != null )
throw new Exception ( itemsArray [0].getRequest().getErrors().getError()[0].getMessage() );

try
{
if ( itemsArray != null )
{
for ( ItemsType2 items : itemsArray )
{
if ( items != null )
{
if(!criteria.equals(“isbn”))
{
pageNo = Integer.parseInt(items.getTotalPages().toString());

if(pageNo >= 400)
pageNo = 399;
}
/**********************************************************
* Items::Item
/**********************************************************/
ItemType2 [] itemArray = items.getItem();

if ( itemArray != null )
{
for ( ItemType2 item : itemArray )
{
if ( item != null )
{
/**********************************************************
* Item::ItemAttributes
/**********************************************************/

Image smallImage = item.getSmallImage();

ItemAttributes itemAttributes = item.getItemAttributes();
String authorString = “”;

if ( itemAttributes != null )
{

for ( String auth : itemAttributes.getAuthor() )
&n

bsp;                                           authorString += auth + “, “;

String url;
try
{
url = smallImage.getURL();
}
catch( Exception ex )
{
url = “/images/k4transparant.gif”;
}

books.add(  new book(itemAttributes.getTitle()
, url
, itemAttributes.getISBN()
, itemAttributes.getPublisher()
, authorString.substring(0,(authorString.length()-2))
));
}
}
}
}
}
}
}

}
catch ( Exception ex )
{
System.out.println( ex.toString());
}
}
return books;
}

15. The ItemSearchRequest object is been used to search with the criteria’s: author, title, keyword. Therefore there has been made a different method which returns a ItemsType2[] array. The returnvalue will be used to retrieve the items for the searchBooks method. The method is displayed below. Copy and paste this method into AmazonSearch.java class.

private ItemsType2[] OtherSearch(String searchCriteria, String searchValue, int pageNo) throws Exception
{
aws.view.proxy.AWSECommerceServicePortClient myPort = new aws.view.proxy.AWSECommerceServicePortClient();

ItemSearch itemSearch = new ItemSearch();
ItemSearchRequest request = new ItemSearchRequest();

//AWS subscription ID from Amazon so you can use their Web services
itemSearch.setSubscriptionId (“08YCQ8XR0HCKRJZFBK82″);

request.setResponseGroup (new String [] {“Images”,”ItemAttributes”,”ItemIds”});

if(searchCriteria.equals(“author”))
request.setAuthor(searchValue);
if(searchCriteria.equals(“title”))
request.setTitle(searchValue);
if(searchCriteria.equals(“keyword”))
request.setKeywords(searchValue);

request.setItemPage(new BigInteger(“”+pageNo));
request.setSearchIndex (“Books”);
itemSearch.setRequest ( new ItemSearchRequest [] { request } );

// Get the response
MultiOperationResponse response =  myPort.multiOperation(null,itemSearch,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null);

if ( response == null )
throw new Exception (“Server Error – no response recieved!”);

ItemsType2 [] itemsArray = response.getItemSearchResponse().getItems();
return itemsArray;
}

16. To enable the searchcriteria: isbn, we cannot use the ItemSearchRequest object, but we must use the ItemLookupRequest object. Therefore we have to make an extra method to retrieve the items in an ItemsType2[] array. The method is displayed below. Copy and paste the method to the AmazonSearch.java class file.

private ItemsType2[] ISBNSearch(String isbn) throws Exception
{
aws.view.proxy.AWSECommerceServicePortClient myPort = new aws.view.proxy.AWSECommerceServicePortClient();

ItemLookup itemLookup = new ItemLookup();
ItemLookupRequest request = new ItemLookupRequest();

//AWS subscription ID from Amazon so you can use their Web services
itemLookup.setSubscriptionId ( “0525E2PQ81DD7ZTWTK82″ );

request.setMerchantId(“All”);
request.setCondition(Condition.New);
request.setItemId(new String[]{isbn});
request.setResponseGroup (new String [] {“Images”,”ItemAttributes”,”ItemIds”});

itemLookup.setRequest ( new ItemLookupRequest [] { request } );

// Get the response
MultiOperationResponse response = myPort.multiOperation(null,null,itemLookup,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null);

if ( response == null )
throw new Exception ( “Server Error – no response recieved!” );

ItemsType2 [] itemsArray = response.getItemLookupResponse().getItems();

return itemsArray;
}
If the myPort.multiOperation, doesn’t work! You have to search in AWSECommerceServicePortClient.java file the correct method to use for returning a correct response object.

17. The next import statements must be realised in AmazonSearch.java(Suggestion! Copy and paste)
import aws.item.book;

import aws.view.proxy.Condition;
import aws.view.proxy.Image;
import aws.view.proxy.ItemAttributes;
import aws.view.proxy.ItemLookup;
import aws.view.proxy.ItemLookupRequest;
import aws.view.proxy.ItemSearch;
import aws.view.proxy.ItemSearchRequest;
import aws.view.proxy.ItemType2;
import aws.view.proxy.ItemsType2;
import aws.view.proxy.MultiOperationResponse;

import java.math.BigInteger;

import java.util.ArrayList;

import oracle.adf.view.faces.component.core.input.CoreInputText;
import oracle.adf.view.faces.component.core.input.CoreSelectOneChoice;
18. The final thing we have to do is creating a map in de project and insert a transparent gif file in this map.
– Create a map in the window explorer like the example below, call the map: images

– Find a transparant picture at google pictures
– Call it k4transparant.gif
– Resize the picture if you are compelled to.
– An example of a transparent picture is shown next.

19. Finished, you are now able to run the AmazonSearch.jsp file, an example of the project is shown below.

20. Look at the http://www.awszone.com/ for any useful documentation.
21. Developer guide: http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=19

 

Share this on .. Tweet about this on TwitterShare on LinkedInShare on FacebookShare on Google+Email this to someoneShare on TumblrBuffer this page

The post How to implement Amazon webservice in ADF appeared first on AMIS Oracle and Java Blog.

]]>
https://technology.amis.nl/2007/12/10/how-to-implement-amazon-webservice-in-adf/feed/ 2