Monday 28 November 2011

Andriod App

kid
1.AniWorld Lite
2.HomeWork
3.Pineapple Studio Jigsaw Puzzles
4.iStory Books
5.Ant Smasher
6.TomnJerry Tube
7.Steamy Window - make picture
8.Classic Simon
++++++++++
1.Science360
2.HowStuffWorks
3.Google Sky Map
4.beebPlayer -radio

iPad app

1.Adobe Ideas
2.Bloomberg
3.Dictionary.com
4.Dropbox (universal)
5.Evernote (universal) online service for saving ideas – text documents, images and web clips
6.The Guardian Eyewitness - showcase for engaging photography
7.PaperDesk Lite for iPad
8.Reuters News Pro for iPad
9.Wikipanion for iPad
10.Google Earth
11.Explore Flickr (universal)
12.BBC News (universal)
13.Epicurious (universal) - ens of thousands of recipes
14.Adobe Photoshop Express
15.Find my iPhone
16.Read It Later Free
17.TED - talks by remarkable people
18.Virtuoso Piano Free 2 HD
19.BBC iPlayer
20.Sky News for iPad
21.Fotopedia Heritage - beautiful locations worldwide
22.Yell - unfamiliar place or travelling somewhere new
23.XE Currency for iPad
24.Classical Guitar

++++++++phone
1.iHandy Level Free
2.TVGuide.co.uk
3.Zoopla Property Search
4.Virtuoso Piano Free 3
5.TuneIn Radio - Don't bother buying a DAB radio
6.Google Translate
++++++++game
1.Air Hockey Gold (universal)
2.Bub - Wider
3.Checkers Free HD
4.GodFinger All-Stars for iPad
5.Hole-in-a-wall HD
6.Pocket Legends for iPad
7.Pilgrim's Punch-Out (universal)
8.New York 3D Rollercoaster Rush HD Free
9.SLS AMG HD - car stun
10.Drop7 Free (universal) -puzzle game
11.TinkerBox - construction
12.Doodle Jump: HOP The Movie (universal)
13.Paper Toss: World Tour HD
14.NinJump - HD - ninja
15.AlexPanda (universal)

Wednesday 26 October 2011

First Cup

Architecture
4 components:
1.DukesAgeResource - JAX-RS RESTful web service;
2.DukesBirthdayBean - enterprise bean;
3.FirstcupUser - JPA entity;
4.firstcup, web app created with JSF Facelets technology

Monday 10 October 2011

GWT + Dynamic Web Project

[ERROR] Unexpected
java.lang.NoSuchFieldError: reportUnusedDeclaredThrownExceptionIncludeDocCommentReference

To fix:
- Right-click project > Properties
- Java Build Path > Order and Export
- Move the GWT SDK above the Server Library (Apache Tomcat)

Tuesday 27 September 2011

Ant

In the root directory with build.xml & build.properties file.
Run "ant build hosted"

If directory not have .classpath or .project file:
Run 'ant eclipse.generate'

Sunday 25 September 2011

GWT Tut - RPC

To use RPC, write 3 components:

1.Define (ClientService interface) extends RemoteService & lists all RPC method.
2.Create (ServerServiceImpl class) extends RemoteServiceServlet & implements methods.
3.Define (ClientServiceAsync interface) to be called from client-side code.

Calling the remote procedure call:
1.Create the proxy class
private ClientServiceAsync clientServiceSvc = GWT.create(ClientService.class);
2.Initialize proxy , set up callback object & make call to the remote method.
Initialize: clientPriceSvc = GWT.create(ClientPriceService.class);
Set up callback: AsyncCallback callback = new AsyncCallback() {public void onFailure .... onSucess....}
Call the remote method: clientServiceSvc.getToy(...

Wednesday 14 September 2011

GWT Tut - gc

Development : in the "edit - refresh - view" cycle.

1.add the widgets to specific [div]
RootPanel rootPanel = RootPanel.get("stockList");
rootPanel.add(mainPanel);

2.Event
*Listen for mouse events on the Add button.
addStockButton.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {

3.Alert dialog box
Window.alert("'" + stockcode + "' not a valid code.");

4.Refer to widget value
String stockcode=newSymbolTextBox.getText().toUpperCase().trim();

5.Widget inside widget
Button removeStockButton = new Button("x");
stocksFlexTable.setWidget(row, 3, removeStockButton);

6.Timer
*Setup timer to refresh list automatically.
Timer refreshTimer = new Timer() {@Override
public void run() {

7.Generate random stock prices.
double price = Random.nextDouble() * MAX_PRICE;

8.From Double to String
String priceText = NumberFormat.getFormat("#,##0.00").format(price.getPrice());

9.Last update date and time
lastUpdatedLabel.setText("Last update : "+ DateTimeFormat.getShortDateTimeFormat().format(new Date()));

10.Debug
Run as debug. Resume, Step over, Step into.

11.Apply css style
stocksFlexTable.getRowFormatter().addStyleName(0, "watchListHeader");
stocksFlexTable.getCellFormatter().addStyleName(row, 1, "watchListNumericColumn");

12.Creat sec. styles dependent on primary style
removeStockButton.addStyleDependentName("remove");

13.Dynamic style
Label changeWidget = (Label)stocksFlexTable.getWidget(row, 2);
changeWidget.setText...
+if (price.getChangePercent() < -0.1f) +{changeStyleName = "negativeChange"; changeWidget.setStyleName(changeStyleName) 14. Generate stock data in JSON(Server). +PrintWriter out = resp.getWriter(); +out.println('['); out.println(" {"); out.print(" \"symbol\": \""); C1-Use JavaScript Native Interface (JSNI) and GWT overlay types to work with the JSON data. class StockData extends JavaScriptObject {... JSNI methods to get stock data. public final native String getSymbol() C2-Make HTTP call to retrieve the JSON data(Client). private static final String JSON_URL = GWT.getModuleBaseURL() + "stockPrices?q="; use the HTTP client classes in the com.google.gwt.http.client package [inherits name="com.google.gwt.http.HTTP" />