[JAVAEETUTORIAL-16] Bean Validation null string comparison code snippet would throw NPE Created: 22/Dec/10  Updated: 16/Aug/12  Resolved: 11/May/11

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.5
Fix Version/s: 6.0.7-5

Type: Bug Priority: Major
Reporter: Ian Evans Assignee: devikag
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

http://download.oracle.com/javaee/6/tutorial/doc/gircz.html#gkcrg


Tags: bean, jsf, validation

 Description   

"In this case, the user input for the field is not required.

if (testString.equals(null)) {
doSomething();
} else {
doAnotherThing();
}

By default, the doAnotherThing method is called even when the user enters no data, because the testStringelement has been initialized with the value of an empty string."

This code is broken in that if testString actually were null, the code would throw a NullPointerException instead of correctly checking the comparison.

It should be:
if (testString == null) {
doSomething();
} else {
doAnotherThing();
}



 Comments   
Comment by devikag [ 11/May/11 ]

Code snippet modified as per user suggestion.

The chapter(9) is updated and the modified content will be visible after next publication.





[JAVAEETUTORIAL-12] Add lifecycle information to volume 2 Created: 30/Sep/10  Updated: 16/Aug/12  Resolved: 20/Apr/11

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.4
Fix Version/s: 6.0.5

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: devikag
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 12
Tags: JSF, lifecycle

 Description   

Michael Amanti made the following suggestion:

The Java EE 6 Tutorial
Chapter 4 "JavaServer Pages Technology"

4'th edition papaerback's page 79...

Subsection "The Lifecycle of the hello Application"
http://download.oracle.com/javaee/6/tutorial/doc/gjaam.html#gjbnc
5'th Paragraph...
"During the execute phase, several actions can take place:

  • The application view is built or restored.
  • The request parameter values are applied.
  • Conversions and validations are performed for component values.
  • Backing beans are updated with component values.
  • Application logic is invoked.

.........................................
I beleive this is the very first location in the tutorial where the
6 Request Processing LifeCycles are referred to.
They should be referred to by their formal names...

1) Restore View
2) Apply Request Values
3) Process Validations
4) Update Model
5) Invoke Application
6) Render Response

Perhaps a 2 columned table would do the trick...
column 1 contain the formal names and column 2 contain the brief descriptions.


We have been planning to keep lifecycle phase details out of volume 1 and
describe them in volume 2 instead.



 Comments   
Comment by devikag [ 20/Apr/11 ]

Detailed information for JavaServer Faces Life cycle has always been planned to be included in Java EE tutorial Volume 2.

Java EE Tutorial Volume 2 online version now provides JSF Life cycle information here:

http://download.oracle.com/javaee/6/tutorial/doc/bnaqq.html





[JAVAEETUTORIAL-28] Need a line break between commands in instructions for simplemessage Created: 16/May/11  Updated: 19/May/11  Resolved: 19/May/11

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.6
Fix Version/s: 6.0.7

Type: Bug Priority: Major
Reporter: Ian Evans Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

From the feedback alias:
In page http://download.oracle.com/javaee/6/tutorial/doc/bnbpq.html

ant create-cf ant create-queue

should read

ant create-cf
ant create-queue



 Comments   
Comment by Ian Evans [ 17/May/11 ]

There's another at the bottom of the page too:

ant delete-cf ant delete-queue

should read

ant delete-cf
ant delete-queue

Alternatively, it could be changed to:

ant delete-cf delete-queue

(you can give multiple targets on the ant command line)

Comment by Kim Haase [ 19/May/11 ]

Checked in fixes to build.xml file and to two doc source files (MDB chapter and JMS Examples). The MDB example hadn't been updated to use the glassfish-resources.xml file to create resources, rather than ant targets. Fixes will appear in next Tutorial update.





[JAVAEETUTORIAL-20] Advanced Composite Components chapter has error, needs enhancement Created: 20/Apr/11  Updated: 01/Aug/13  Resolved: 01/Aug/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.6
Fix Version/s: 7.0.2

Type: Bug Priority: Major
Reporter: jendrock Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All



 Description   

Reported to the Java EE Documentation mailing list from a user.

Error:
I think there is a mistake in chapter 13 of the Java EE 6 Tutorial (Advanced Composite Components), within the fourth section of that chapter (The compositecomponentlogin Example Application), in the first subsection of that section (The Composite Component File): I think there is a composite:attribute clause missing (<composite:attribute name="myloginBean" required="true"/>, or something like that).

Enhancement:
Moreover, from my point of view the contents of the next subsection (The Using Page) would be clearer if the subsection The Composite Component File of Chapter 13 started saying something like "The composite component file is an XHTML file called LoginPanel.xhtml." and a reference was added to the Composite Components section of Chapter 5 (Introduction to Facelets), where the use of Facelet libraries and prefixes for composite components is introduced.



 Comments   
Comment by jendrock [ 27/Apr/11 ]

Removed name of user who reported the issue.

Comment by jendrock [ 05/Feb/13 ]

The "error" was fixed quite some time ago. The required="true" portion is not included, as I believe it is the default. The verbiage requested in the "enhancement" section was included as well.

The cross reference back to the Composite Components section in the Introduction to Facelets chapter would be helpful. We'll add that in for the 7.0.0 release.

Comment by Ian Evans [ 24/Jun/13 ]

Reassigning Chinmayee's issues.

Comment by jendrock [ 01/Aug/13 ]

We will defer this fix until the next update, just prior to JavaOne. For that release, we are looking at replacing the compositecomponentlogin example with a more appropriate example.

Comment by Kim Haase [ 01/Aug/13 ]

Actually, there is a cross-reference to the Facelets chapter intro to composite components, right at the beginning of he Advanced Composite Components chapter. I don't think another one is needed.

So I think this issue can be closed now.

Comment by jendrock [ 01/Aug/13 ]

Actually, Kim is right. I will close the issue and open a new issue for replacing the compositecomponentlogin example with a more appropriate composite component example.





[JAVAEETUTORIAL-52] Security chapter still refers to sun-web.xml Created: 22/Sep/11  Updated: 25/May/12  Resolved: 25/May/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7
Fix Version/s: 6.0.7-3

Type: Bug Priority: Major
Reporter: Ian Evans Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

http://java.sun.com/javaee/6/docs/tutorial/doc/bncbe.html#bncbk

There are references to sun-*.xml for GlassFish-specific deployment descriptors in "Using Deployment Descriptors to Secure Web Applications."

These should be changed to glassfish-*.xml.



 Comments   
Comment by Kim Haase [ 22/Sep/11 ]

I've actually fixed this in source though I may not have checked it in yet. Will plan on doing a checkin by the end of the week.

Comment by jendrock [ 25/May/12 ]

Fixed in 6.0.7-3. Also note that the content was moved from a chapter in the basic section to a section in the chapter that addresses advanced security topics.





[JAVAEETUTORIAL-43] Create a composite component example that shows how to use an action listener Created: 15/Jul/11  Updated: 05/Feb/13  Due: 15/Aug/11  Resolved: 05/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: doc, examples
Affects Version/s: 6.0.7
Fix Version/s: 6.0.7-6

Type: Task Priority: Major
Reporter: jendrock Assignee: chinmayee_srivathsa
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 4 weeks
Time Spent: Not Specified
Original Estimate: 4 weeks


 Description   

Create an additional composite component example that shows how to use an action listener. This requires a new example, not a mere rewrite of the customary composite component login example. Then, document how to build, deploy, and run the new example in the Advanced Composite Components chapter and also add a section that explains when to use "action" vs. "action listener".



 Comments   
Comment by jendrock [ 05/Feb/13 ]

We already have a composite component example. Although a better example could be created, we do not plan to do so in the forseeable future.





[JAVAEETUTORIAL-42] Create a connector example, perhaps one that involves interfacing with some 3rd party API Created: 15/Jul/11  Updated: 25/May/12  Due: 15/Aug/11  Resolved: 25/May/12

Status: Closed
Project: javaeetutorial
Component/s: doc, examples
Affects Version/s: None
Fix Version/s: 6.0.7-3

Type: Task Priority: Major
Reporter: jendrock Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 4 weeks
Time Spent: Not Specified
Original Estimate: 4 weeks


 Description   

The tutorial never has had a connector example. It would be helpful to include one, especially one that showed how to use what was conceptually explained in the tutorial chapter. This example could be created in a way that involves interfacing with a 3rd party API, but should not be limited to this. Think of it as "fielder's choice", a baseball term that leaves the choice and details up to you.

I guessed on the estimate for how long it would take to create such an example, then document it. Feel free to adjust this accordingly.



 Comments   
Comment by jendrock [ 25/May/12 ]

The mailconnector example is included with the tutorial. It shipped with 6.0.7-3.





[JAVAEETUTORIAL-41] Move the mutual authentication content from volume 1 to the Advanced Security Topics chapter in volume 2 Created: 14/Jul/11  Updated: 16/Aug/12  Due: 28/Jul/11  Resolved: 25/May/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7

Type: Task Priority: Major
Reporter: jendrock Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 2 weeks
Time Spent: Not Specified
Original Estimate: 2 weeks


 Description   

The mutual authentication content is advanced material, therefore it belongs in the second volume of the tutorial where advanced topics are covered not in the first volume, which cover basic concepts. Content that covers how to create client certificates needs to be moved from the first to the second volume as well. To this, new sections that explain how to create server certificates, add certificates to keystores and truststores, and otherwise manipulate certificates needs to be added as well. Finally, an example needs to be created and documented in a second advanced security chapter in the second volume. This will show how to implement mutual authentication in a real example. The shopping cart in Duke's Bookstore where this security mechanism needs to be implemented.



 Comments   
Comment by jendrock [ 25/May/12 ]

The content has been moved and the change can be seen in the 6.0.7-3 release.





[JAVAEETUTORIAL-40] Internationalize the dukes-forest case study Created: 14/Jul/11  Updated: 05/Feb/13  Resolved: 05/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.7
Fix Version/s: 6.0.8

Type: Task Priority: Major
Reporter: jendrock Assignee: William Markito
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 2 weeks
Time Spent: Not Specified
Original Estimate: 2 weeks

Issue Links:
Related
is related to JAVAEETUTORIAL-32 html tags in examples must have lang ... Resolved

 Description   

The Duke's Forest case study needs to be internationalized. All text strings need to be removed from the code in all subprojects and put in a Messages.properties file (or ValidationMessages.properties file, if needed). The dukes-store and dukes-shipment projects appear to be done, but the dukes-payment project is not, as it looks to be incomplete. After the string removal has been done, the properties file(s) will need to be translated to Portuguese (Brazilian), Spanish, German, and Chinese.



 Comments   
Comment by William Markito [ 05/Aug/11 ]

Already created i18n bundle files for English in Dukes Store and Dukes Shipment. Needs to test with other languages before closing the ticket.

Comment by jendrock [ 05/Feb/13 ]

The Spanish and English message bundles are present for the dukes-store and dukes-shipment projects. This is more than sufficient for our purposes. If anyone needs to examine a case study that has multi-language message bundles and validation message bundles, they can take a look at the dukes-tutoring project.





[JAVAEETUTORIAL-39] New chapters must be indexed Created: 14/Jul/11  Updated: 16/Aug/12  Due: 15/Aug/11  Resolved: 16/Aug/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-6

Type: Task Priority: Major
Reporter: jendrock Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

All new chapters need to be indexed, following the indexing format, terminology, conventions, and consistency that are present in the original chapters. Chapters that need to be indexed include the following: ajax.sgm, bean-validation-advanced.sgm, cdi-adv.sgm, cdi-adv-examples.sgm, dukes-tutoring.sgm, ejb-async.sgm, ejb-embedded, interceptors.sgm, jaxrs-advanced.sgm, jaxrs-advanced-examples.sgm, jsfconfigure.sgm, jsfcustom.sgm, jsflifecycle.sgm, jsfmodels.sgm, persistence-cache.sgm, persistence-locking.sgm, persistence-string-queries.sgm, and webi18n.sgm. Additional chapters will be added to this list as they are completed.



 Comments   
Comment by Kim Haase [ 25/May/12 ]

Most of these have been indexed already; added index entries to persistence-cache.sgm, persistence-locking.sgm, and persistence-string-queries.sgm.

Comment by Kim Haase [ 06/Jun/12 ]

I believe all the indexing is done except for the content we are still waiting for (servlet, CDI).

Comment by Ian Evans [ 16/Aug/12 ]

Kim: is this issue still open?

Comment by Kim Haase [ 16/Aug/12 ]

Thanks for checking, Ian – we did finish the indexing, possibly even before the respin, but I'm leaving the release as 6.0.7-6 just in case.





[JAVAEETUTORIAL-38] Change from DBAO to using JPA entity classes Created: 17/Jun/11  Updated: 16/Aug/12  Resolved: 14/Jul/11

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-5

Type: Task Priority: Major
Reporter: chinmayee_srivathsa Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 2 weeks
Time Spent: Not Specified
Original Estimate: 2 weeks


 Comments   
Comment by jendrock [ 14/Jul/11 ]

Kim and I completed this task. We created and populated the database, ran the NetBeans Create Entities from Database wizard to create a new Book.java file in the dukesbookstore.entities package. We added the findbooks named query to it as well. We got rid of web/bookstore/src/java/com/sun/bookstore6/database/BookDBAO.java and migrated its functionality to dukes-bookstore/src/java/dukesbookstore/ejb/BookRequestBean.java, adding logging functionality and a named query.

Comment by jendrock [ 14/Jul/11 ]

The functionality has been ported to the revised example in web/dukes-bookstore. We tested it and it operates as before - no regressions.

Comment by jendrock [ 14/Jul/11 ]

It works as advertised, so I will close this issue. However, if further testing indicates a need to work on it again, the issue will have to be reopened.





[JAVAEETUTORIAL-37] Remove screenshots from instructions Created: 08/Jun/11  Updated: 17/Aug/11  Resolved: 17/Aug/11

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.6
Fix Version/s: 6.0.7

Type: Bug Priority: Major
Reporter: Ian Evans Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In preparation for DARB post-processor, remove all screenshots from the tutorial chapters. They're usually unnecessary, and they're difficult to display within the frame of our new doc output.



 Comments   
Comment by Kim Haase [ 08/Jun/11 ]

Eric and I are working on this. Hope we aren't tromping on anyone else.

Comment by jendrock [ 13/Jul/11 ]

There are four small partial screen shots, some annotated and some not, that we can replace with illustrations after they have been redone by the graphic illustrator. I have submitted a work request for this task, specifically for Figures 7-1, 7-2, 7-3, and 7-4.

Comment by Kim Haase [ 17/Aug/11 ]

All screenshots were removed from the book.





[JAVAEETUTORIAL-31] All form elements must have labels Created: 03/Jun/11  Updated: 16/Aug/12  Resolved: 15/Jun/12

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.4
Fix Version/s: 6.0.7-4

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

All form elements must have labels. Some of our form fields do not have these, particularly on text fields:

web/hello1 (and security version)
web/hello2 (and security version)
web/guessnumber
web/ajaxguessnumber
web/compositecomponentlogin
jaxrs/rsvp (one instance)
ejb/converter (and security version)
cdi/guessnumber

We need to use the h:outputLabel tag with the for attribute set to the id of the element for which it is a label.

To make the text of the label visible, use the value attribute to specify it. To make it invisible, use the title attribute. For example, to keep the label in the hello1 app from showing, you could do the following:

<h:outputLabel for="username"
title="My name is: "/>
<h:inputText id="username"
... />

It might be more user-friendly to provide a visible label, though.



 Comments   
Comment by Kim Haase [ 08/Jul/11 ]

I have completed the label work for the simple examples listed in the issue description.

I'm unassigning myself so that others can pick up the work for dukes-forest if need be. The dukes-tutoring labels are correct as is.

Comment by Kim Haase [ 30/May/12 ]

In Duke's Forest, all form elements have labels.

Comment by Kim Haase [ 30/May/12 ]

Added a label to a form element in the mailconnector example.

Comment by Kim Haase [ 05/Jun/12 ]

Actually, the dukes-tutoring login form needs a fix. Because the page uses a mix of JSF and HTML tags, the labels' for attributes don't match the input tags' id attributes. So we need to add a title attribute to the input tags to meet the accessibility requirement.

Comment by Kim Haase [ 05/Jun/12 ]

Added title attributes. Committed at revision 927.

Comment by Kim Haase [ 15/Jun/12 ]

I believe that this task has been completed for all the current examples and can now be closed.





[JAVAEETUTORIAL-55] Explanation of JavaFX needs to be updated Created: 11/Oct/11  Updated: 11/Oct/11  Resolved: 11/Oct/11

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: michael.heinrichs Assignee: Unassigned
Resolution: Invalid Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The explanation of JavaFX on the page "Differences between JavaEE and JavaSE" needs to be updated to reflect the new approach of JavaFX 2.0.



 Comments   
Comment by Ian Evans [ 11/Oct/11 ]

Issue is in First Cup, not the Java EE Tutorial. Created bug FIRSTCUP-5 to track issue.





[JAVAEETUTORIAL-260] Wrong CriteriaQuery.join() examples in the Criteria API documentation Created: 30/Jan/14  Updated: 30/Jan/14  Resolved: 30/Jan/14

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.2
Fix Version/s: 7.0.4

Type: Bug Priority: Major
Reporter: patrik.varga Assignee: Kim Haase
Resolution: Fixed Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: CriteriaQuery, criteria, join

 Description   

There are some examples of CriteriaQuery.join() calls in the Criteria API documentation.
Neither CriteriaQuery nor its superinterface AbstractQuery have a join() method.
These local variables should refer to the root node "pet" instead of the CriteriaQuery "cq".

Occurences in "Using the Criteria API and Metamodel API to Create Basic Typesafe Queries":

"Querying Relationships Using Joins":
Join<Owner, Address> address = cq.join(Pet_.owners).join(Owner_.addresses);

"Ordering Results":
Join<Owner, Address> address = cq.join(Pet_.owners).join(Owner_.address);
Join<Pet, Owner> owner = cq.join(Pet_.owners);



 Comments   
Comment by Kim Haase [ 30/Jan/14 ]

Thank you very much for pointing out these errors. The fixes will appear in the next Tutorial update.

We appreciate your interest in the Tutorial.

Comment by Kim Haase [ 30/Jan/14 ]

Fixed in documentation source.





[JAVAEETUTORIAL-259] Tutorial uses nonexisting command: asadmin command create-resources Created: 28/Jan/14  Updated: 28/Jan/14  Resolved: 28/Jan/14

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.2
Fix Version/s: 7.0.4

Type: Bug Priority: Major
Reporter: geirot Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Totorial Java EE 7 chapter 3.3 Creating Resources Administratively
uses: asadmin create-resources glassfish-resources.xml
this command doesn't exist
should use: asadmin add-resources glassfish-resources.xml



 Comments   
Comment by Kim Haase [ 28/Jan/14 ]

Thank you very much for pointing out this error.

Comment by Kim Haase [ 28/Jan/14 ]

Fixed in FrameMaker source.





[JAVAEETUTORIAL-258] Websocket dukeetf2 and websocketbot, socket remains open after browser tab closed Created: 20/Jan/14  Updated: 25/Mar/14  Resolved: 25/Mar/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: pggeldenhuys Assignee: Unassigned
Resolution: Works as designed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Chrome Version 32.0.1700.77 GlassFish Server Open Source Edition 4.0 (build 89) OSX 10.9.1


Tags: examples, websocket

 Description   

In the dukeetf2 websocket example:

Why does the server keep sending the messages after the browser tab on the client is closed? Why is the ETFEndpoint @OnClose never called? I understand that the timer service keeps hitting send every second, but the connection should be closed surely, and its session removed from the queue? After which the queue should be empty?

The websocketbot application also does the same, it does not close the connections, from both Chrome and Safari, neither closing the tabs nor the browser works on my machine



 Comments   
Comment by jendrock [ 25/Mar/14 ]

Closing the browser tab does not undeploy the application. If you undeploy the example, the socket closes and the issue no longer exists.





[JAVAEETUTORIAL-240] dukes-forest: Payment web service does not work Created: 28/Aug/13  Updated: 29/Aug/13  Resolved: 29/Aug/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: None
Fix Version/s: 7.0.3

Type: Bug Priority: Major
Reporter: rcervera Assignee: Unassigned
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The payment web service does not work in the current state of the application. Follow these steps to reproduce the issue:

1. Start Glassfish Server

2. Build and deploy the application:
(this enables principal-to-role mapping and creates the required resources)
mvn install

3. Open a web browser:
http://localhost:8080/dukes-store/

4. Register as a new user

5. Log in as the new user
The log is successful on the page, but you get the following error message on the log:
SEVERE: SEC1111: Cannot load group for JDBC realm user [ricardo@gmail.com].

6. Add some products to the cart

7. Check out
You get the following errors on the log:


WARNING: Following exception was thrown:
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
[...]
Caused by: javax.xml.ws.WebServiceException: Failed to access the WSDL at: http://RCERVERA-LAP:8080/dukes-store/PaymentService/__container$publishing$subctx/null?WSDL. It failed with:
Server returned HTTP response code: 502 for URL: http://RCERVERA-LAP:8080/dukes-store/PaymentService/__container$publishing$subctx/null?WSDL.
at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.tryWithMex(RuntimeWSDLParser.java:249)
at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:230)
at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:193)
at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:162)
at com.sun.xml.ws.client.WSServiceDelegate.parseWSDL(WSServiceDelegate.java:359)
at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:321)
at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:230)
at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:212)
at com.sun.xml.ws.client.WSServiceDelegate.<init>(WSServiceDelegate.java:208)
at com.sun.xml.ws.spi.ProviderImpl.createServiceDelegate(ProviderImpl.java:112)
at javax.xml.ws.Service.<init>(Service.java:92)
at services.payment.forest.com.PaymentService.<init>(PaymentService.java:58)
... 36 more
Caused by: java.io.IOException: Server returned HTTP response code: 502 for URL: http://RCERVERA-LAP:8080/dukes-store/PaymentService/__container$publishing$subctx/null?WSDL
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1625)
at java.net.URL.openStream(URL.java:1037)
at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.createReader(RuntimeWSDLParser.java:983)
at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.resolveWSDL(RuntimeWSDLParser.java:384)
at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:215)
... 46 more

SEVERE: EJB5070: Exception creating stateless session bean : [PaymentHandler]
WARNING: EJB5184:A system exception occurred ...


Possible cause: the JDBC realm is not working properly.
Possible line of investigation: New Password Encryption Algorithm field that we are not specifying. See the last comment on the following link:
http://stackoverflow.com/questions/12067410/glassfish-3-1-2-jdbcrealm-configuration

(digestrealm-password-enc-algorithm property if we want to add it in glassfish-resources.xml)



 Comments   
Comment by rcervera [ 29/Aug/13 ]

The payment web service works properly. The problem was the proxy configuration in GlassFish. Remove the http.proxyHost and http.proxyPort properties from your server, then the payment works fine.

We made changes to the installation process. Verify as follows:

1. Remove any previous authentication realms:
asadmin delete-auth-realm jdbcRealm

2. Configure resources and realms on dukes-forest/
mvn exec:exec

3. Build and deploy the application:
mvn install

4. Test normally and look at the server log. Payments less than $1000 are processed.





[JAVAEETUTORIAL-257] JAX-WS tutorial chapter doesn't match what is in the code examples Created: 23/Dec/13  Updated: 15/Sep/14  Resolved: 23/Dec/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.2
Fix Version/s: 7.0.3

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Actually this applies to both the doc and the examples; some fixes are needed to both.

The example source code for the JAX-WS web service, app client, and web client examples has been updated, but the code shown in the tutorial has not been updated to match it. Also, the WSDL URL in the source code is incorrect, so the clients do not run.



 Comments   
Comment by Kim Haase [ 23/Dec/13 ]

Checked in code fixes at revision 1713. Also checked in fixes in FrameMaker source.





[JAVAEETUTORIAL-253] Update EL chapter to reflect 3.0 changes Created: 27/Sep/13  Updated: 11/Feb/14  Resolved: 11/Feb/14

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.2
Fix Version/s: 7.0.4

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The Expression Language chapter includes some new features of EL 3.0, but still contains some obsolete language. I have committed some changes based on a first review, but there may be more to come.



 Comments   
Comment by Kim Haase [ 11/Feb/14 ]

Fixes completed.





[JAVAEETUTORIAL-250] 54.5 The jobs Concurrency Example missing info and won't run Created: 23/Sep/13  Updated: 25/Mar/14  Resolved: 25/Mar/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: HankCa Assignee: Unassigned
Resolution: Works as designed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

JavaEE 7.0.21, glassfish-4.0.1-b03



 Description   

I followed the tutorial http://docs.oracle.com/javaee/7/tutorial/doc/concurrency-utilities005.htm#CIHCGGEG (54.5 The jobs Concurrency Example) and there is a configuration options missing.

  • I had to set glassfish.home.prefix property in docs/javaee-tutorial/examples/pom.xml and nowhere does the Tutorial or that documentation say to do this

And then once fixed I couldn't get to work in Netbeans or through Maven as discussed. The reasons are:

  • Firstly was due to an empty beans.xml file - /docs/javaee-tutorial/examples/concurrency/jobs/src/main/webapp/WEB-INF/beans.xml
  • Second was an error I could not work out without becoming more familiar with the code which I don't have time to do now (when all I want to do is see the examples working as described). The error is as below.

I'm looking forward to seeing this working!

Cheers,

Brooke

2013-09-23 10:47:01 .390+1000 [SEVERE] - WebModule[/jobs]StandardWrapper.Throwable
java.lang.IllegalStateException: Error when configuring to use the EJB interceptor binding API. JAX-RS EJB integration can not be supported.
at org.glassfish.jersey.gf.ejb.EjbComponentProvider.registerEjbInterceptor(EjbComponentProvider.java:167)
at org.glassfish.jersey.gf.ejb.EjbComponentProvider.bind(EjbComponentProvider.java:199)
...
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.glassfish.jersey.gf.ejb.EjbComponentProvider.registerEjbInterceptor(EjbComponentProvider.java:162)
... 92 more
Caused by: java.lang.NullPointerException
at com.sun.ejb.containers.InternalInterceptorBindingImpl.registerInterceptor(InternalInterceptorBindingImpl.java:97)
... 97 more
2013-09-23 10:47:01 .391+1000 [SEVERE] - WebModule[/jobs]Servlet /jobs threw load() exception
java.lang.NullPointerException
at com.sun.ejb.containers.InternalInterceptorBindingImpl.registerInterceptor(InternalInterceptorBindingImpl.java:97)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
...
2013-09-23 10:47:01 .391+1000 [SEVERE] - Startup of context /jobs failed due to previous errors]]
2013-09-23 10:47:01 .395+1000 [SEVERE] - ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: org.apache.catalina.LifecycleException: java.lang.NullPointerException
at org.apache.catalina.core.StandardContext.start(StandardContext.java:5954)
at com.sun.enterprise.web.WebModule.start(WebModule.java:691)
...
Caused by: org.apache.catalina.LifecycleException: java.lang.NullPointerException
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5712)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:5946)
... 72 more
Caused by: java.lang.NullPointerException
at com.sun.ejb.containers.InternalInterceptorBindingImpl.registerInterceptor(InternalInterceptorBindingImpl.java:97)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.glassfish.jersey.gf.ejb.EjbComponentProvider.registerEjbInterceptor(EjbComponentProvider.java:162)
at org.glassfish.jersey.gf.ejb.EjbComponentProvider.bind(EjbComponentProvider.java:199)
at org.glassfish.jersey.server.ApplicationHandler.bindWithComponentProvider(ApplicationHandler.java:845)
at org.glassfish.jersey.server.ApplicationHandler.bindProvidersAndResources(ApplicationHandler.java:775)
at org.glassfish.jersey.server.ApplicationHandler.initialize(ApplicationHandler.java:396)
at org.glassfish.jersey.server.ApplicationHandler.access$500(ApplicationHandler.java:161)
at org.glassfish.jersey.server.ApplicationHandler$3.run(ApplicationHandler.java:286)
at org.glassfish.jersey.internal.Errors$2.call(Errors.java:289)
at org.glassfish.jersey.internal.Errors$2.call(Errors.java:286)
at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
at org.glassfish.jersey.internal.Errors.processWithException(Errors.java:286)
at org.glassfish.jersey.server.ApplicationHandler.<init>(ApplicationHandler.java:283)
at org.glassfish.jersey.servlet.WebComponent.<init>(WebComponent.java:298)
at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:167)
at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:349)
at javax.servlet.GenericServlet.init(GenericServlet.java:244)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1583)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1382)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5704)
... 73 more
2013-09-23 10:47:01 .396+1000 [WARNING] - java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.apache.catalina.LifecycleException: java.lang.NullPointerException
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.apache.catalina.LifecycleException: java.lang.NullPointerException
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1044)
...
2013-09-23 10:47:01 .396+1000 [SEVERE] - Exception while invoking class com.sun.enterprise.web.WebApplication start method
java.lang.Exception: java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.apache.catalina.LifecycleException: java.lang.NullPointerException
at com.sun.enterprise.web.WebApplication.start(WebApplication.java:168)
at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
...
2013-09-23 10:47:01 .397+1000 [SEVERE] - Exception during lifecycle processing
java.lang.Exception: java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.apache.catalina.LifecycleException: java.lang.NullPointerException
at com.sun.enterprise.web.WebApplication.start(WebApplication.java:168)
...
2013-09-23 10:47:01 .397+1000 [SEVERE] - Exception while loading the app]]
2013-09-23 10:47:01 .403+1000 [SEVERE] - Undeployment failed for context /jobs]]
2013-09-23 10:47:01 .418+1000 [SEVERE] - Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.apache.catalina.LifecycleException: java.lang.NullPointerException]]



 Comments   
Comment by jendrock [ 27/Sep/13 ]

Several issues are raised here.

We explicitly tell users what environment is optimal for running the tutorial. This is explained here: http://docs.oracle.com/javaee/7/tutorial/doc/usingexamples001.htm#GEXAB.

If you download and install the Java EE 7 SDK, you get the correct environment and the tutorial example tree in one installation. Furthermore, you also get access to Update Tool, a mechanism for ensuring that you always have the most up-to-date tutorial sources installed. If you do not follow these directions, the tutorial will not work out-of-the-box, as you discovered.

The non-zero byte-length beans.xml file was an issue that we recognized as a problem the first day that we shipped the tutorial. I noted this as a problem in the Java EE 7 SDK Release Notes (http://www.oracle.com/technetwork/java/javaee/documentation/javaee7sdk-readme-1957703.html), which are available on the SDK download page. You have 2 options for this problem - delete the beans.xml file or update the tutorial package and get a "patched" tutorial where this shortcoming has been addressed. This is why we encourage folks to use the environment that we promote.

I believe that your final problem is due to the fact that you installed the Web Profile, not the Full Profile version of GlassFish Server. Again, we explicitly say that we support only the Full Profile version.

If you start the application server and then create and configure the 2 managed executor services that are described in http://docs.oracle.com/javaee/7/tutorial/doc/concurrency-utilities005.htm#sthref2912 before you try to run the jobs example, I am sure that you will find that it works as advertised. I just tried it again, after updating my tutorial installation to package 7.0.3-1, and it works as described.

Comment by jendrock [ 25/Mar/14 ]

I believe that the issues that were noted caused the example to not run. Once the issues that were identified were resolved, the app should run as expected, and it does!





[JAVAEETUTORIAL-245] Validation error message for malformed password can't be found (Duke's Forest) Created: 18/Sep/13  Updated: 19/Sep/13  Resolved: 18/Sep/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: None
Fix Version/s: 7.0.3

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File password.jpg    

 Description   

If I try to sign up as a new user and enter "1234" as the password, I get an error message that says just "

{person.password}

", indicating that the error message can't be found. I think this means that validation messages have to stay in dukes-store and can't be moved to dukes-resources after all?

Image attached.



 Comments   
Comment by rcervera [ 18/Sep/13 ]

This is now fixed in the source. The ValidationMessages had to be moved one level up in dukes-resources.

Comment by Kim Haase [ 19/Sep/13 ]

Thanks, Ricardo, for fixing this! I can confirm that the validation message now appears:

Password must be between 7 and 100 characters and not empty.





[JAVAEETUTORIAL-255] Invalid integer converter example in Java EE 7 tutorial chapter 11.1.1 Created: 20/Nov/13  Updated: 15/Sep/14  Resolved: 27/Nov/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.2
Fix Version/s: 7.0.3

Type: Bug Priority: Major
Reporter: balusc Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

http://docs.oracle.com/javaee/7/tutorial/doc/jsf-page-core001.htm#JEETT00931

It mentions:

<h:inputText converter="javax.faces.convert.IntegerConverter" />

However, this is wrong, it should have been:

<h:inputText converter="javax.faces.Integer" />

See also http://stackoverflow.com/q/20081207



 Comments   
Comment by Kim Haase [ 27/Nov/13 ]

Thank you for pointing this out. The error has been corrected, and some additional fixes have been made in that section for the next respin.





[JAVAEETUTORIAL-238] NullPoint error in chapter 8.5 Composite Components example code. Created: 26/Aug/13  Updated: 26/Aug/13  Resolved: 26/Aug/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: evil850209 Assignee: Kim Haase
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Java EE 7
GlasshFish 4.0


Issue Links:
Duplicate
duplicates JAVASERVERFACES_SPEC_PUBLIC-1213 f:viewParam doesn't work when using x... Resolved

 Description   

I am reading The Java EE 7 Tutorial from http://docs.oracle.com/javaee/7/tutorial/doc/jsf-facelets005.htm#GIQZR

After I typed the example code in the chapter 8.5 Composite Components in my IDE and run the example on GlassFish4.0, I got an error.

java.lang.NullPointerException
at java.util.concurrent.ConcurrentHashMap.putIfAbsent(ConcurrentHashMap.java:1078)
at com.sun.faces.util.Cache.get(Cache.java:116)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.getComponentMetadata(FaceletViewHandlingStrategy.java:237)
at com.sun.faces.application.ApplicationImpl.createComponent(ApplicationImpl.java:951)
at javax.faces.application.ApplicationWrapper.createComponent(ApplicationWrapper.java:648)

Then I check the older version of this tutorial, I found a difference in email.xhtml code. The namespace has been changed from Java EE 7. After I changed the namespace back to JavaEE 6 version, it works.

Java EE 7

xmlns:composite="http://xmlns.jcp.org/jsf/composite"

Java EE 6

xmlns:composite="http://java.sun.com/jsf/composite"



 Comments   
Comment by Ian Evans [ 26/Aug/13 ]

Duplicate of JAVASERVERFACES_SPEC_PUBLIC-1213.

Comment by Kim Haase [ 26/Aug/13 ]

I believe this is essentially a duplicate of https://java.net/jira/browse/JAVASERVERFACES-2868 (of which https://java.net/jira/browse/JAVASERVERFACES_SPEC_PUBLIC-1213 is also a duplicate, I believe). Several components do not work correctly with the new xmlns.jcp.org namespace at the first release of JSF 2.2. The fix for this problem will be in the next released version of JSF 2.2.x.

We document the namespaces the way they are supposed to work, rather than document the incorrect behavior. The facelets pages for the tutorial examples that use composite components (and a few other components) use the java.sun.com namespace so that the examples will run.





[JAVAEETUTORIAL-212] Create a simple outbound connector example Created: 10/Jul/13  Updated: 30/Jul/13  Resolved: 30/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: None
Fix Version/s: 7.0.2

Type: Improvement Priority: Major
Reporter: rcervera Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The mailconnector example, while very complete, is very complex and mixes two use cases (inbound vs. outbound) that are better understood separately. JCA would be easier to explain and understand with a basic outbound example and a basic inbound example.

This issue represents creating a basic outbound example.



 Comments   
Comment by rcervera [ 30/Jul/13 ]

The example is now available under connectors/outboundconnector and is also described in the Connector Examples chapter.





[JAVAEETUTORIAL-213] Create a simple inbound connector example Created: 10/Jul/13  Updated: 30/Jul/13  Resolved: 30/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: None
Fix Version/s: 7.0.2

Type: Improvement Priority: Major
Reporter: rcervera Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The mailconnector example, while very complete, is very complex and mixes two use cases (inbound vs. outbound) that are better understood separately. JCA would be easier to explain and understand with a basic outbound example and a basic inbound example.

This issue represents creating a basic inbound example.



 Comments   
Comment by rcervera [ 30/Jul/13 ]

The example is now available under connectors/inboundconnector and is also described in the Connector Examples chapter.





[JAVAEETUTORIAL-208] Unused JMS example mistakenly included in bundle Created: 02/Jul/13  Updated: 02/Jul/13  Resolved: 02/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I forgot to remove the webrequestreply example from the workspace, though it was not included in the tutorial examples in the end. I will remove it from the trunk and branch.



 Comments   
Comment by Kim Haase [ 02/Jul/13 ]

Removed jms/webrequestreply directories from trunk and 7.0.1 branch at revision 1463.





[JAVAEETUTORIAL-186] Make sure "jump lists" are correct Created: 10/Jun/13  Updated: 30/Jul/13  Resolved: 30/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Now that we have to manually update the "jump list" at the beginning of each chapter when we add a section, there is at least one mismatch – section 2.7 is not in the jump list at the beginning of Chapter 2. There may be more. This is a placeholder for all such fixes.



 Comments   
Comment by jendrock [ 20/Jun/13 ]

Fixed in source. Will go into update for 7.0.1.

Comment by Kim Haase [ 30/Jul/13 ]

Fixed again for 7.0.2.





[JAVAEETUTORIAL-180] Fix/Redo tables 18-1 and 18-2 in the WebSocket chapter Created: 06/Jun/13  Updated: 11/Jun/13  Resolved: 11/Jun/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.0
Fix Version/s: 7.0.1

Type: Improvement Priority: Major
Reporter: rcervera Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: html

 Description   

The tables don't look good on the HTML output.



 Comments   
Comment by rcervera [ 11/Jun/13 ]

Table 18-1 was redesigned to render properly in the HTML view.
Table 18-2 was converted to an itemized list to render properly in the HTML view.

Comment by rcervera [ 11/Jun/13 ]

Fixes will appear in the next nightly build. Fix for Table 18-1 is already incorporated into the latest nightly build.





[JAVAEETUTORIAL-179] Add some .css to the following examples: jsonpmodel, jsonpstreaming, duketf, dukeetf2, webserverlog, phonebilling, websocketbot Created: 06/Jun/13  Updated: 25/Jul/13  Resolved: 25/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.0
Fix Version/s: 7.0.2

Type: Improvement Priority: Major
Reporter: rcervera Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Add some style to the examples above, since they look a little rough right now with no styling at all.



 Comments   
Comment by Ian Evans [ 06/Jun/13 ]

What about making a resource library example for JSF with common CSS files that these examples depend on? That way, we'd have one project to maintain for style and accessibility issues, etc.

Comment by rcervera [ 07/Jun/13 ]

That sounds like a good idea.

Some of these projects do not have JSF pages, just plain HTML and JavaScript. Maybe I should convert them to simple JSF pages for using such a common resource and still use the same JavaScript?

Comment by rcervera [ 25/Jul/13 ]

Ian, I added the default.css from other projects to these projects for the time being.

If we go with a JSF resource library for all projects, I'll modify these. They just did not look good without any style at all.





[JAVAEETUTORIAL-177] Fix/Redo tables 17-4, 17-5, and 17-6 (Servlets) - Description column is too narrow and hard to read Created: 06/Jun/13  Updated: 11/Jun/13  Resolved: 11/Jun/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.0
Fix Version/s: 7.0.1

Type: Improvement Priority: Major
Reporter: rcervera Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

These tables need to be redesigned or fixed. The description column is too narrow and hard to read on the HTML output.



 Comments   
Comment by rcervera [ 11/Jun/13 ]

These tables have been redesigned in the sources.





[JAVAEETUTORIAL-175] 17.12.2 Waiting for a Resource - Replace the 'Resource' type in this example as it may get confused with @Resource Created: 06/Jun/13  Updated: 11/Jun/13  Resolved: 11/Jun/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.0
Fix Version/s: 7.0.1

Type: Improvement Priority: Major
Reporter: rcervera Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This sections shows how to use asynchronous processing in Servlet using the access to some resource as an example. The type of the resource should be changed from 'Resource' to 'MyResource' or similar to avoid confusion with @Resource.



 Comments   
Comment by rcervera [ 11/Jun/13 ]

Replaced Resource with MyRemoteResource.





[JAVAEETUTORIAL-172] 4 examples in Java EE 7 SDK fail because zero-byte length beans.xml files are not zero bytes long Created: 05/Jun/13  Updated: 07/Aug/14  Resolved: 07/Aug/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.1
Fix Version/s: 7.0.5

Type: Bug Priority: Major
Reporter: jendrock Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any


Attachments: Text File ErrorsInServerLog.txt    

 Description   

Four beans.xml files that should be zero bytes long were inadvertently modified to 1 KB (contain 2 empty lines) during the bundling process. This causes the examples that contain these files to fail. The four files are:

1. glassfish4/docs/javaee-tutorial/examples/concurrency/jobs/src/main/webapp/WEB-INF/beans.xml
2. glassfish4/docs/javaee-tutorial/examples/web/jsonp/jsonpmodel/src/main/webapp/WEB-INF/beans.xml
3. glassfish4/docs/javaee-tutorial/examples/web/jsonp/jsonpstreaming/src/main/webapp/WEB-INF/beans.xml
4. glassfish4/docs/javaee-tutorial/examples/web/jsf/checkout-module/src/main/webapp/WEB-INF/beans.xml

The beans.xml files in the concurrency/jobs, jsonp/jsonpmodel, and jsonp/jsonpstreaming projects can be deleted. The examples will then run as expected.

The beans.xml file in the jsf/checkout-module must be modified in a text editor. Open the file and add the following content, making sure to add an empty line at the end:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd">
</beans>

The jsf/checkout-module should now run as expected.



 Comments   
Comment by jendrock [ 05/Jun/13 ]

The workaround is to follow the instructions in the description, deleting the beans.xml files in the concurrency/jobs, jsonp/jsonpmodel, and jsonp/jsonpstreaming projects and editing the beans.xml file in the jsf/checkout-module project to add this content followed by a blank line:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd">
</beans>

Then, if you following the instructions in the documentation (bundled or online), all four examples should run with Maven/Cargo on the command line or with NetBeans IDE 7.3.1.

These issues will be fixed in the next tutorial update.

Comment by Ian Evans [ 05/Jun/13 ]

Eric, could you post the Weld error when you deploy with the 1 byte beans.xml descriptor? I'm sure some people will search for the error string.

It's also possible that we should file a bug against Weld. An empty file is an empty file, whether there is one carriage return or CF/LF.

Comment by jendrock [ 06/Jun/13 ]

The following message is displayed when you build the examples with the malformed beans.xml files. (This message is what was seen when the concurrency/jobs example was built.)

[INFO] — cargo-maven2-plugin:1.4.2:redeploy (deploy) @ jobs —
[INFO] [DeployerRedeployMojo] Resolved container artifact org.codehaus.cargo:car
go-core-container-glassfish:jar:1.4.2 for container glassfish4x
[INFO] [talledLocalContainer] Command deploy failed.
[INFO] [talledLocalContainer] remote failure: Error occurred during deployment:
Exception while loading the app : WELD-001202 Error parsing file:/C:/glassfish4/
glassfish/domains/domain1/applications/jobs/WEB-INF/beans.xml. Please see server
.log for more details.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE

The ErrorsInServerLog.txt attachment provides the more detailed WELD error from the server.log file.

Comment by Ian Evans [ 24/Jun/13 ]

Fixed in 7.0.1-3 update.

Comment by Kim Haase [ 24/Jul/13 ]

The checkout-module example works if I use a CDI 1.0 beans.xml file (java.sun.com namespace) – it runs with no errors or warnings.

Comment by Kim Haase [ 25/Jun/14 ]

Same problem exists with simple-flow and checkout-module in 7.0.4 release of tutorial examples. They have a newline in the supposedly empty beans.xml file.

Comment by Kim Haase [ 25/Jun/14 ]

There is no problem with the two jsonp examples at 7.0.4, because they don't have beans.xml files.

Comment by Kim Haase [ 07/Aug/14 ]

Fixed for GF 4.1.





[JAVAEETUTORIAL-171] Add info on JMS resource-definition annotations and use in some examples Created: 05/Jun/13  Updated: 19/Jul/13  Resolved: 19/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Nigel Deakin (JMS spec lead) pointed out that Java EE 7 supports two new annotations that need to be documented. These allow resources to be configured by the developer rather than the administrator. They should also be used in some of the JMS examples.

Examples:

@JMSDestinationDefinition(
name = "java:global/jms/tutorialQueue",
description = "Queue to use in tutorial",
interfaceName = "javax.jms.Queue"
destinationName = "MyQueueForTutorial"
)

@JMSConnectionFactoryDefinition(
name="java:global/jms/tutorialConnectionFactory",
description="ConnectionFactory to use in tutorial"
)



 Comments   
Comment by Kim Haase [ 12/Jul/13 ]

After some experimentation (the namespace seems to be java:app rather than java:global), I was able to use @JMSDestinationDefinition in two examples and to describe the annotation feature in the tutorial.

Comment by Kim Haase [ 12/Jul/13 ]

Committed doc and example fixes.

Comment by Kim Haase [ 17/Jul/13 ]

There's still more work to do, based on comments from Nigel on the fixed examples.

Comment by Kim Haase [ 19/Jul/13 ]

Committed fixes for both docs and examples.





[JAVAEETUTORIAL-169] Code copied and pasted into Frame does not show line breaks in the HTML output Created: 05/Jun/13  Updated: 05/Jun/13  Resolved: 05/Jun/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.1

Type: Bug Priority: Major
Reporter: rcervera Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When you sometimes paste code from an editor into Frame, it looks good in the Frame view and the PDF, but the line breaks are not really new lines, and they do not show up correctly on the HTML output.

We have to ensure that each line in the example has its own ProgramListing structure element.

Examples of affected files:

servlets015.htm
websocket011.htm
batch-processing008.htm



 Comments   
Comment by rcervera [ 05/Jun/13 ]

Fixed in the doc sources.

Comment by Ian Evans [ 05/Jun/13 ]

Which code editor did you paste in from? I've pasted from NetBeans, TextPad, and emacs with no apparent problems.

Comment by rcervera [ 05/Jun/13 ]

I always pasted from NetBeans, and it worked fine 95% of the time. There were a few cases where it did not work properly. The line break characters appear on FrameMaker but several lines where grouped together in the same ProgramListing.

Comment by Kim Haase [ 05/Jun/13 ]

Ricardo's right. You have to be really, really careful how you paste from NB. I think pasting into a new, empty programlisting element works okay, but trying to overwrite existing code can produce strange results. You really have to look not only at the Frame page (where the newlines look fine) but also at the structure to make sure the new code isn't all in one programlisting element.





[JAVAEETUTORIAL-170] Many links to Java EE 6 API and VDL docs within the Tutorial Created: 05/Jun/13  Updated: 01/Jul/13  Resolved: 01/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Major
Reporter: Ian Evans Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The following files have links to the EE 6 API/VDL docs:
ejb-basicexamples004.htm
jaxrs002.htm
jaxrs003.htm
jsf-page-core004.htm



 Comments   
Comment by Ian Evans [ 05/Jun/13 ]

Fixed in EJB and JAX-RS chapters.

Comment by Ian Evans [ 05/Jun/13 ]

Reassigning to Kim for JSF fix.

Comment by Kim Haase [ 05/Jun/13 ]

Fixed in JSF chapter.

Comment by Kim Haase [ 05/Jun/13 ]

Ian, did you commit the EJB and JAX-RS chapters? They don't come in when I update.

Comment by Ian Evans [ 05/Jun/13 ]

Source files checked in.

Comment by jendrock [ 01/Jul/13 ]

Update Java SE 6 API doc URLs in webi18n001.htm to Java SE 7 locations.

Comment by jendrock [ 01/Jul/13 ]

Updated Java SE 6 API doc links in webi18n001.htm to Java SE 7 URLs.





[JAVAEETUTORIAL-168] Revise 3 advanced JMS examples to use multiple app clients instead of a single multithreaded one Created: 05/Jun/13  Updated: 11/Jul/13  Resolved: 11/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Task Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The durable subscription, acknowledgement mode, and local transactions examples use a single multithreaded program to demonstrate the associated features. The JMS spec lead suggests in his review that these will be easier for users to understand if the various classes are broken into separate source files and run separately. The fix should go into the July or September update depending on how difficult it is to do.



 Comments   
Comment by Kim Haase [ 11/Jul/13 ]

Fixed in code and chapters.





[JAVAEETUTORIAL-232] Wrong URL given for guessnumber-jsf Created: 02/Aug/13  Updated: 09/Aug/13  Resolved: 09/Aug/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.3

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Section 8.3.3.3, "To Run the guessnumber-jsf Example", gives the URL as

http://localhost:8080/guessnumber

This gives an error 404, however. The URL should be

http://localhost:8080/guessnumber-jsf



 Comments   
Comment by Kim Haase [ 09/Aug/13 ]

Fixed in jsf-facelets.fm chapter.





[JAVAEETUTORIAL-205] Content of Java EE 7 Tutorial PDF file does not match contents of Java EE 7 Tutorial HTML files Created: 28/Jun/13  Updated: 10/Jul/13  Resolved: 10/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Major
Reporter: jendrock Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

A user reports that http://docs.oracle.com/javaee/7/tutorial/doc/javaeetutorial7.pdf is not as up to date as its HTML counterpart.

The first difference can easily be seen on this page : http://docs.oracle.com/javaee/7/tutorial/doc/overview001.htm#GIQVH and its pdf counterpart.

To match the HTML docs that are in the latest IPS package in the Update Center, the online HTML files for the Java EE 7 Tutorial were updated and pushed out. The individual that pushed the HTML files out, however, did not have ownership of the PDF file, nor was he in the correct group, nor were the permissions set in such a manner that he was able to effect any changes, so this matter will have to rest as is until the original owner returns from vacation and either resets the file so it can be updated or updates the file from the doc directory in the branches/javaeetutorial-7.0.1 repository herself.



 Comments   
Comment by Kim Haase [ 10/Jul/13 ]

The correct PDF is now provided on the docs.oracle.com site.





[JAVAEETUTORIAL-204] Broken links in the Java EE 7 Tutorial Created: 28/Jun/13  Updated: 02/Jul/13  Resolved: 02/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Major
Reporter: jendrock Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

A user reported that links, such as http://docs.oracle.com/javaee/7/javaserverfaces/2.2/docs/renderkitdocs/, in http://docs.oracle.com/javaee/7/tutorial/doc/jsf-page001.htm
are not working.

After rerunning LinkChecker 8.4, the following links have been found to be broken (HTTP 404 error):

In http://docs.oracle.com/javaee/7/tutorial/doc/jsf-ajax013.htm, https://javaserverfaces.java.net/nonav/docs/2.2/jsdocs/symbols/jsf.ajax.html.

In http://docs.oracle.com/javaee/7/tutorial/doc/jsf-configure005.htm#BNAXB, http://ftp.ics.uci.edu/pub/ietf/http/related/iso639.txt.

In http://docs.oracle.com/javaee/7/tutorial/doc/jsf-facelets004.htm#GIQXP, http://docs.oracle.com/javaee/7/javaserverfaces/2.2/docs/vdldocs/facelets/.

In http://docs.oracle.com/javaee/7/tutorial/doc/jsf-page001.htm#BNARB, http://docs.oracle.com/javaee/7/javaserverfaces/2.2/docs/renderkitdocs/.

In http://docs.oracle.com/javaee/7/tutorial/doc/preface.htm#GEXAF, https://glassfish.java.net/nonav/docs/v4/api/.

There were two URLs that resulted in a HTTP 301 error (moved permanent) and should be updated:

In http://docs.oracle.com/javaee/7/tutorial/doc/jaxrs004.htm#GILIZ, http://oreilly.com/catalog/9780596529260/ is redirected to http://shop.oreilly.com/product/9780596529260.do

In http://docs.oracle.com/javaee/7/tutorial/doc/jsf-configure002.htm#BNAWP, http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd is redirected to http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/web-facesconfig_2_2.xsd

There are also several http URLs that are redirected to https URLs and should be updated:

In http://docs.oracle.com/javaee/7/tutorial/doc/jaxrs003.htm#GIPZZ, http://www.netbeans.org/kb/docs/websvc/rest.html is redirected to https://netbeans.org/kb/docs/websvc/rest.html

In http://docs.oracle.com/javaee/7/tutorial/doc/jaxrs003.htm#GIPZZ, http://netbeans.org/kb/docs/websvc/twitter-swing.html is redirected to https://netbeans.org/kb/docs/websvc/twitter-swing.html

In http://docs.oracle.com/javaee/7/tutorial/doc/jsf-facelets004.htm#GIQXP, http://netbeans.org/kb/docs/web/jsf20-intro.html is redirected to https://netbeans.org/kb/docs/web/jsf20-intro.html

In http://docs.oracle.com/javaee/7/tutorial/doc/preface.htm#GEXAF, http://www.netbeans.org/kb/ is redirected to https://netbeans.org/kb/

In http://docs.oracle.com/javaee/7/tutorial/doc/usingexamples001.htm#GEXAJ, http://www.netbeans.org/downloads/index.html is redirected to https://netbeans.org/downloads/index.html



 Comments   
Comment by Kim Haase [ 01/Jul/13 ]

Fixed in doc source (except the jcp.org one, which should be left as is).

Comment by Kim Haase [ 02/Jul/13 ]

Found a bad link that the linkchecker missed, from http://docs.oracle.com/javaee/7/tutorial/doc/jsf-custom008.htm.

Are there more?

Comment by Kim Haase [ 02/Jul/13 ]

Fixed bad link in jsf-custom chapter. Please reopen if more are found.





[JAVAEETUTORIAL-221] Character without meaning Created: 19/Jul/13  Updated: 19/Jul/13  Resolved: 19/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.1
Fix Version/s: None

Type: Bug Priority: Major
Reporter: enriquezrene Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

pdf



 Description   

I was reading the book and found in the 54/918 page of pdf in the last paragraph

The tool provider is the company or person who creates development, assembly, and packaging tools used by component providers, s, and deployers

I think that you should remove the letter "s" in last part:

providers, s, and deployers

Is not important but I think that you should remove the character



 Comments   
Comment by Kim Haase [ 19/Jul/13 ]

Thanks – this is a duplicate of JAVAEETUTORIAL-216, which is fixed for version 7.0.2.





[JAVAEETUTORIAL-282] dukeetf example fails in locales that use a comma as a currency separator Created: 25/Jul/14  Updated: 28/Jul/14  Resolved: 28/Jul/14

Status: Closed
Project: javaeetutorial
Component/s: doc, examples
Affects Version/s: 7.0.4
Fix Version/s: 7.0.5

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We received the following report from a user:

I have found an issue with the example dukeetf

This is a sample of the ajax response.

109,54, 280995

This is parsed wrongly on the UI and shows 109 as the price and 54 as the volume.

The result should be 109.54 as the price and 280995 as volume

http://docs.oracle.com/javaee/7/tutorial/doc/servlets017.htm#BEIFAIFF

Rahul Mahindrakar



 Comments   
Comment by Kim Haase [ 25/Jul/14 ]

This seems to happen if a user is working in a locale that uses the comma as a currency separator (most locales do, actually).

The simplest fix is to use a separator other than a comma between the price and volume.

I don't think any locales use "/" as a currency separator.

So in the send() method of DukeETFServlet.java, we should change the line of code that calls String.format() to look like this:

String msg = String.format("%.2f / %d", price, volume);

And in the updatePage() JavaScript method on the main.xhtml page, we should then change the line that calls the split method to look like this:

var arraypv = ajaxRequest.responseText.split("/");

Comment by Kim Haase [ 28/Jul/14 ]

Rahul points out that the same problem exists with the dukeetf2 example at http://docs.oracle.com/javaee/7/tutorial/doc/websocket011.htm. The fix needs to be made there in both the example and the documentation.

Comment by Kim Haase [ 28/Jul/14 ]

Committed fixes for dukeetf and dukeetf2 at revisions 1773 and 1774.

Comment by jendrock [ 28/Jul/14 ]

The documentation has been updated to reflect the changes to both the dukeetf and dukeetf2 examples. The introduction to Section 17.17.1.1, "The Servlet," has also been rewritten, removing the example of what not to do. The rewritten section simply says what the snippet shows and what the init and send methods do. These fixes have been committed to our doc workspaces and should appear at the next update.





[JAVAEETUTORIAL-281] Wrong Title Created: 24/Jul/14  Updated: 25/Jul/14  Resolved: 25/Jul/14

Status: Closed
Project: javaeetutorial
Component/s: doc, examples
Affects Version/s: 7.0.4
Fix Version/s: 7.0.5

Type: Bug Priority: Major
Reporter: adelukman Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Page: http://docs.oracle.com/javaee/7/tutorial/doc/webapp003.htm
Section: 6.3.5.2 To Undeploy the hello1 Web Module Using the asadmin Command

I think it should read :
6.3.5.2 To Undeploy the hello1 Web Module Using the "maven" Command

because of the following :
In a terminal window, go to:
tut-install/examples/web/jsf/hello1/
Enter the following command:
mvn cargo:undeploy
To delete the class files and other build artifacts, enter the following command:
mvn clean



 Comments   
Comment by Kim Haase [ 24/Jul/14 ]

Thanks for catching that mistake. I thought I had fixed all those, but I missed that one!

Comment by Kim Haase [ 25/Jul/14 ]

Fixed in source; will appear in next release of tutorial.





[JAVAEETUTORIAL-280] Use syntax highlighting for the code snippets Created: 14/Jul/14  Updated: 23/Jul/14  Resolved: 23/Jul/14

Status: Closed
Project: javaeetutorial
Component/s: doc, examples
Affects Version/s: 7.0.4
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: Andras.Hatvani Assignee: super_glassfish
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The code snippets are plain black currently throughout the whole documentation. It would ease reading and therefore speed up learning if syntax highlighting would be applied to Java examples.



 Comments   
Comment by jendrock [ 23/Jul/14 ]

This issue is being closed because it is a duplicate of JAVAEETUTORIAL-189 (see https://java.net/jira/browse/JAVAEETUTORIAL-189), which was already closed.





[JAVAEETUTORIAL-276] counter example has bad copyrights on Facelets pages Created: 25/Jun/14  Updated: 15/Sep/14  Resolved: 25/Jun/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.4
Fix Version/s: 7.0.5

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The EJB counter example fails because the xml directive is not the first line of the Facelets page (index.xhtml). Users need to remove the copyrights or move them below the xml directive to make the example work.



 Comments   
Comment by Kim Haase [ 25/Jun/14 ]

Fixed in source.





[JAVAEETUTORIAL-274] Unable to log in Duke Forest sample - auth-realm not configured? Created: 25/Jun/14  Updated: 25/Jun/14  Resolved: 25/Jun/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.4
Fix Version/s: 7.0.5

Type: Bug Priority: Major
Reporter: David Delabassee Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

GF 4.0.1b7



 Description   

Unable to log in using the default users (jack@example.com, robert@example.com / 1234) or using a newly created user.

I am not sure if the jdbc auth realm creation works in https://svn.java.net/svn/javaeetutorial~svn/branches/javaee-tutorial-7.0.4/examples/case-studies/dukes-forest/entities/pom.xml
No issue while building but I don't see it in my Admin console.

--8<--
SEVERE: javax.servlet.ServletException: Login failed at org.apache.catalina.authenticator.AuthenticatorBase.doLogin(AuthenticatorBase.java:983) at org.apache.catalina.authenticator.AuthenticatorBase.login(AuthenticatorBase.java:963) at org.apache.catalina.connector.Request.login(Request.java:2250) at org.apache.catalina.connector.Request.login(Request.java:2229) at org.apache.catalina.connector.RequestFacade.login(RequestFacade.java:1113) at com.forest.web.UserController.login(UserController.java:62) at com.forest.web.UserController$Proxy$_$$_WeldClientProxy.login(Unknown Source) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at com.sun.el.parser.AstValue.invoke(AstValue.java:289) at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304) at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40) at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50) at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105) at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:87) at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102) at javax.faces.component.UICommand.broadcast(UICommand.java:315) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646) at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673) at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174) at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673) at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:412) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:282) at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459) at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167) at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201) at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175) at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235) at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119) at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284) at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201) at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133) at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112) at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77) at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561) at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112) at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117) at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56) at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137) at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565) at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545) at java.lang.Thread.run(Thread.java:745)
WARNING: WEB9102: Web Login Failed: com.sun.enterprise.security.auth.login.common.LoginException: Login failed: Failed file login for robert@example.com.
--8<--



 Comments   
Comment by jendrock [ 25/Jun/14 ]

When you follow the directions for building the example, the task completes but the following error occurs:

remote failure: Creation of Authrealm jdbcRealm failed. com.sun.enterprise.security.auth.realm.BadRealmException: java.lang.ClassNotFoundException: com.sun.enterprise.security.ee.auth.realm.jdbc.JDBCRealm not found by org.glassfish.main.security [328]
com.sun.enterprise.security.auth.realm.BadRealmException: java.lang.ClassNotFoundException: com.sun.enterprise.security.ee.auth.realm.jdbc.JDBCRealm not found by org.glassfish.main.security [328]
Command create-auth-realm failed.

Why? Because some bright soul (no names needed) decided to rename the package from this:

com.sun.enterprise.security.ee.auth.realm.jdbc.JDBCRealm

to this:

com.sun.enterprise.security.auth.realm.jdbc.JDBCRealm

I can make a one-line change in the /entities/pom.xml file, which will allow the JDBCRealm to be created and be visible from the Admin Console, but the example will no longer work with GF 4.0; it will only work with GF 4.0.1. In other words, the application will no longer be backward compatible WITHIN a major version (i.e., compatibility across minor versions is broken). This is not a good thing at all. It makes using GF less inviting, that is for sure.

Comment by jendrock [ 25/Jun/14 ]

I filed an issue against GlassFish 4.0.1. See https://java.net/jira/browse/GLASSFISH-21105.

Comment by jendrock [ 25/Jun/14 ]

I committed the change to the trunk workspace, which means that it will be included in the tutorial update (7.0.5) that coincides with the release of GlassFish 4.0.1.





[JAVAEETUTORIAL-275] jsf/filesystemrlc throws a NPE Created: 25/Jun/14  Updated: 27/Jun/14  Resolved: 25/Jun/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: David Delabassee Assignee: super_glassfish
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

GF 4.0b89 (SE 1.7.0_51-b13) and GF 4.0.1b7 (SE 1.8.0_05-b13)
on OS X Mavericks



 Description   

Clicking in 'Blue' 'Red' will throws :
java.lang.NullPointerException
at filesystemrlc.FilesystemResourceHandler.createResource(FilesystemResourceHandler.java:77)
at com.sun.faces.renderkit.html_basic.StylesheetRenderer.encodeEnd(StylesheetRenderer.java:97)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:924)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
at com.sun.faces.renderkit.html_basic.HeadRenderer.encodeHeadResources(HeadRenderer.java:113)
at com.sun.faces.renderkit.html_basic.HeadRenderer.encodeEnd(HeadRenderer.java:100)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:924)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1863)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1859)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:443)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:357)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:260)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:744)



 Comments   
Comment by Kim Haase [ 25/Jun/14 ]

The Java EE 7 Tutorial does not include an example called "filesystemrlc". It has one called "hello1-rlc" that appears to work fine in GF 4.0.1.

Comment by David Delabassee [ 27/Jun/14 ]

My bad. The broken sample is part of the GF samples not the Tutorial sample, sorry!

Comment by Kim Haase [ 27/Jun/14 ]

No problem. I think the glassfish-samples project has its own JIRA account if you want to file an issue there.

I did borrow from their RLC example for the tutorial one (hello1-rlc), but I cleaned it up a bit. I hope.

We appreciate your testing of our examples very much!





[JAVAEETUTORIAL-271] No active contexts for scope type javax.transaction.TransactionScoped Created: 21/Jun/14  Updated: 07/Aug/14  Resolved: 07/Aug/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.4
Fix Version/s: None

Type: Bug Priority: Major
Reporter: David Delabassee Assignee: super_glassfish
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

GF 4.0.1 b7 (6/21/14 build)
Java SE build 1.8.0_05-b13 - Max OS X



 Description   

The jms/websimplemessage sample works fine on GF4.0 (b89) but throws the following exception on GF4.0.1 : WELD-001303: No active contexts for scope type javax.transaction.TransactionScoped



 Comments   
Comment by Kim Haase [ 23/Jun/14 ]

This appears to be a problem with Weld, not with the example itself. I'm not sure why it was filed against the tutorial, but it cannot be considered a critical tutorial error.

Comment by Kim Haase [ 23/Jun/14 ]

Here is the stack trace. Initializing the messageText value makes no difference.

Severe: Error Rendering View[/sender.xhtml]
javax.el.ELException: /sender.xhtml @30,38 value="#

{senderBean.messageText}

": org.jboss.weld.context.ContextNotActiveException: WELD-001303: No active contexts for scope type javax.transaction.TransactionScoped
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
at javax.faces.component.UIOutput.getValue(UIOutput.java:174)
at javax.faces.component.UIInput.getValue(UIInput.java:291)
at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:205)
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:355)
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:164)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1864)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1857)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:461)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:415)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:282)
at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
at java.lang.Thread.run(Thread.java:744)
Caused by: javax.el.ELException: org.jboss.weld.context.ContextNotActiveException: WELD-001303: No active contexts for scope type javax.transaction.TransactionScoped
at javax.el.BeanELResolver.getValue(BeanELResolver.java:368)
at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
at com.sun.el.parser.AstValue.getValue(AstValue.java:140)
at com.sun.el.parser.AstValue.getValue(AstValue.java:204)
at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:226)
at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
... 49 more
Caused by: org.jboss.weld.context.ContextNotActiveException: WELD-001303: No active contexts for scope type javax.transaction.TransactionScoped
at org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:687)
at org.jboss.weld.manager.BeanManagerImpl.getInjectableReference(BeanManagerImpl.java:825)
at org.jboss.weld.injection.ParameterInjectionPointImpl.getValueToInject(ParameterInjectionPointImpl.java:76)
at org.jboss.weld.injection.ConstructorInjectionPoint.getParameterValues(ConstructorInjectionPoint.java:141)
at org.jboss.weld.injection.ConstructorInjectionPoint.newInstance(ConstructorInjectionPoint.java:71)
at org.jboss.weld.injection.producer.AbstractInstantiator.newInstance(AbstractInstantiator.java:28)
at org.jboss.weld.injection.producer.BasicInjectionTarget.produce(BasicInjectionTarget.java:104)
at org.jboss.weld.injection.producer.BeanInjectionTarget.produce(BeanInjectionTarget.java:190)
at org.glassfish.jms.injection.JMSCDIExtension$LocalPassivationCapableBean.create(JMSCDIExtension.java:208)
at org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:69)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:740)
at org.jboss.weld.manager.BeanManagerImpl.getInjectableReference(BeanManagerImpl.java:831)
at org.jboss.weld.injection.FieldInjectionPoint.inject(FieldInjectionPoint.java:92)
at org.jboss.weld.util.Beans.injectBoundFields(Beans.java:364)
at org.jboss.weld.util.Beans.injectFieldsAndInitializers(Beans.java:375)
at org.jboss.weld.injection.producer.DefaultInjector$1.proceed(DefaultInjector.java:71)
at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:150)
at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46)
at org.jboss.weld.injection.producer.DefaultInjector.inject(DefaultInjector.java:68)
at org.jboss.weld.injection.producer.ResourceInjector.access$101(ResourceInjector.java:46)
at org.jboss.weld.injection.producer.ResourceInjector$1.proceed(ResourceInjector.java:70)
at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:150)
at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46)
at org.jboss.weld.injection.producer.ResourceInjector.inject(ResourceInjector.java:65)
at org.jboss.weld.injection.producer.BasicInjectionTarget.inject(BasicInjectionTarget.java:109)
at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:150)
at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:96)
at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:98)
at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:78)
at org.jboss.weldeetutorial.websimplemessage.SenderBean$Proxy$_$$_WeldClientProxy.getMessageText(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at javax.el.BeanELResolver.getValue(BeanELResolver.java:363)
... 56 more

Warning: StandardWrapperValve[Faces Servlet]: Servlet.service() for servlet Faces Servlet threw exception
org.jboss.weld.context.ContextNotActiveException: WELD-001303: No active contexts for scope type javax.transaction.TransactionScoped
at org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:687)
at org.jboss.weld.manager.BeanManagerImpl.getInjectableReference(BeanManagerImpl.java:825)
at org.jboss.weld.injection.ParameterInjectionPointImpl.getValueToInject(ParameterInjectionPointImpl.java:76)
at org.jboss.weld.injection.ConstructorInjectionPoint.getParameterValues(ConstructorInjectionPoint.java:141)
at org.jboss.weld.injection.ConstructorInjectionPoint.newInstance(ConstructorInjectionPoint.java:71)
at org.jboss.weld.injection.producer.AbstractInstantiator.newInstance(AbstractInstantiator.java:28)
at org.jboss.weld.injection.producer.BasicInjectionTarget.produce(BasicInjectionTarget.java:104)
at org.jboss.weld.injection.producer.BeanInjectionTarget.produce(BeanInjectionTarget.java:190)
at org.glassfish.jms.injection.JMSCDIExtension$LocalPassivationCapableBean.create(JMSCDIExtension.java:208)
at org.jboss.weld.context.unbound.DependentContextImpl.get(DependentContextImpl.java:69)
at org.jboss.weld.manager.BeanManagerImpl.getReference(BeanManagerImpl.java:740)
at org.jboss.weld.manager.BeanManagerImpl.getInjectableReference(BeanManagerImpl.java:831)
at org.jboss.weld.injection.FieldInjectionPoint.inject(FieldInjectionPoint.java:92)
at org.jboss.weld.util.Beans.injectBoundFields(Beans.java:364)
at org.jboss.weld.util.Beans.injectFieldsAndInitializers(Beans.java:375)
at org.jboss.weld.injection.producer.DefaultInjector$1.proceed(DefaultInjector.java:71)
at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:150)
at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46)
at org.jboss.weld.injection.producer.DefaultInjector.inject(DefaultInjector.java:68)
at org.jboss.weld.injection.producer.ResourceInjector.access$101(ResourceInjector.java:46)
at org.jboss.weld.injection.producer.ResourceInjector$1.proceed(ResourceInjector.java:70)
at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:150)
at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46)
at org.jboss.weld.injection.producer.ResourceInjector.inject(ResourceInjector.java:65)
at org.jboss.weld.injection.producer.BasicInjectionTarget.inject(BasicInjectionTarget.java:109)
at org.jboss.weld.bean.ManagedBean.create(ManagedBean.java:150)
at org.jboss.weld.context.AbstractContext.get(AbstractContext.java:96)
at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:98)
at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:78)
at org.jboss.weldeetutorial.websimplemessage.SenderBean$Proxy$_$$_WeldClientProxy.getMessageText(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at javax.el.BeanELResolver.getValue(BeanELResolver.java:363)
at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
at com.sun.el.parser.AstValue.getValue(AstValue.java:140)
at com.sun.el.parser.AstValue.getValue(AstValue.java:204)
at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:226)
at org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50)
at com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:182)
at javax.faces.component.UIOutput.getValue(UIOutput.java:174)
at javax.faces.component.UIInput.getValue(UIInput.java:291)
at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:205)
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:355)
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:164)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:919)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1864)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:176)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:889)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1857)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1860)
at com.sun.faces.application.view.FaceletViewHandlingStrategy.renderView(FaceletViewHandlingStrategy.java:461)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:133)
at javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:337)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:120)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:219)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:647)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:318)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)
at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:415)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:282)
at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561)
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
at java.lang.Thread.run(Thread.java:744)

Comment by David Delabassee [ 24/Jun/14 ]

I have created https://java.net/jira/browse/GLASSFISH-21095 on GF/CDI

Comment by David Delabassee [ 30/Jun/14 ]

https://java.net/jira/browse/GLASSFISH-21095 has been fixed.
I've tested the sample on b208, it now works fine.

Comment by Kim Haase [ 07/Aug/14 ]

The problem turned out to be a GlassFish issue, not a tutorial issue. The GlassFish issue has been fixed.





[JAVAEETUTORIAL-266] Java EE tutorial 7 error.build the hello1 Web Module‏ Created: 04/Apr/14  Updated: 07/Aug/14  Resolved: 07/Aug/14

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: pinostudente Assignee: jendrock
Resolution: Works as designed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

netbeans IDE 8.0



 Description   

Hi in the Java EE tutorial 7 at page:103
6.3.2.1 To Build and Package the hello1 Web Module Using NetBeans IDE.
1. Start the GlassFish Server as described in To Start the GlassFish Server Using
NetBeans IDE, if you have not already done so.
2. From the Filemenu, select Open Project.
3. In the Open Project dialog box, navigate to:
tut-install/examples/web/jsf
4. Select the hello1folder.
5. Click Open Project.
6. In the Projectstab, right-click the hello1project and select Build. This command
deploys the project to the server.

it is imposible to Build the hello1 example. If i click on the hello1 project and click Build an error is occured.

" Failed to execute goal org.codehaus.cargo:cargo-maven2-plugin:1.4.4:redeploy (deploy) on project hello2: Execution deploy of goal org.codehaus.cargo:cargo-maven2-plugin:1.4.4:redeploy failed: Cannot find the GlassFish admin CLI JAR: admin-cli.jar -> [Help 1]

To see the full stack trace of the errors, re-run Maven with the -e switch.
Re-run Maven using the -X switch to enable full debug logging.

For more information about the errors and possible solutions, please read the following articles:
[Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException "
If i go at the webpage: http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
no solution is available at the page above.



 Comments   
Comment by jendrock [ 04/Apr/14 ]

The error message that you passed along indicates a problem with your environment, more specifically the location in which you installed GlassFish Server (as opposed to the Java EE 7 SDK).

If you followed the instructions in Chapter 2, "Using the Tutorial Examples," you installed the SDK, which includes GlassFish Server and the Java EE 7 Tutorial. If you did not follow the aforementioned instructions and installed GlassFish Server as part of your NetBeans 8.0 installation or if you installed GlassFish Server by itself, you would encounter path problems similar in nature to the one that you did encounter.

Please reread the instructions for setting everything up: http://docs.oracle.com/javaee/7/tutorial/doc/usingexamples001.htm#GEXAB

Ensure that NetBeans IDE points to GlassFish Server in the SDK, not in the location that NetBeans installs GlassFish Server. If you still encounter the same issue, please use a comment to add more information to this issue. That information would include the location of your SDK, GlassFish Server, and tutorial examples. The tutorial (and its examples) should be in a location that is relative to GlassFish Server, as it is in the SDK.

Comment by pinostudente [ 04/Apr/14 ]

Thanks. Now it works! I just looked at the page like you said: http://docs.oracle.com/javaee/7/tutorial/doc/usingexamples001.htm#GEXAB
and changed the installation directory from galssfish4 server and following step by step the description of the link you sent to me. Now it works perfectly!

Comment by saimir [ 07/Aug/14 ]

The response provided above works when the glassfish installation process is followed as per oracle documentation. However, the configuration can be adapted as per user preferences. The problem that one must know is where to change, create or update the admin password for the existing glassfish server. And it can be achieved by making changes to the configuration file, named 'password.properties' which is under the glassfish_root/glassfish/domains directory.





[JAVAEETUTORIAL-264] Would you please supply moblie format such as epub Created: 05/Mar/14  Updated: 05/Mar/14  Resolved: 05/Mar/14

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: zwe Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

JavaEE 7 tutorial supplies PDF, which is good for PCs (and may be tablets), but it is not easy to read on a phone. Almost every body has a phone today, would you please supply a mobile format? Or a single page HTML version(it is easy to convert to mobile format)



 Comments   
Comment by jendrock [ 05/Mar/14 ]

This issue is a duplicate of JAVAEETUTORIAL-67. At the time I responded to that issue, I indicated that Mobi and ePub formats of the tutorial would be available as soon as we switched production systems. Due to changing circumstances, that will not occur going forward. However, the tutorial will be published as a 2-volume set by Pearson Education and will be available for purchase in print as well as in Mobi and ePub formats.

Here are the links to the prepublication pages for both volumes of the tutorial on amazon.com. Be sure to click the link on the right side of the page to have Amazon tell our publisher that you want to see the electronic version of the volume made available.

For Volume 1, see:

http://www.amazon.com/The-Java-EE-Tutorial-Edition/dp/0321994922/ref=pd_sim_sbs_b_1?ie=UTF8&refRID=140GAT6H8ZRJFTFERGR7

For Volume 2, see:

http://www.amazon.com/The-Java-EE-Tutorial-Edition/dp/0321980085/ref=pd_sim_sbs_b_1?ie=UTF8&refRID=0FP0CHGC662997762GDX

Comment by jendrock [ 05/Mar/14 ]

I am closing the issue because it is a duplicate of JAVAEETUTORIAL-67. Please read the previous comment for more information about how and when electronic formats of the tutorial will be commercially available.





[JAVAEETUTORIAL-269] Incorrect tutorial example for passing CacheStoreMode & CacheRetrieveMode Created: 15/May/14  Updated: 07/Aug/14  Resolved: 07/Aug/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: nkhattar Assignee: jendrock
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There is a link on Java EE6 tutorial named as 'Specifying the Cache Mode Settings to Improve Performance'. The url is : http://docs.oracle.com/javaee/6/tutorial/doc/gkjjj.html.
Here an example is mentioned under sub-heading 'Setting the Cache Retrieval or Store Mode'. The example is as follows -

EntityManager em = ...;
em.setProperty("javax.persistence.cache.storeMode", "BYPASS");

...............

EntityManager em = ...;
Map<String, Object> props = new HashMap<String, Object>();
props.put("javax.persistence.cache.retrieveMode", "BYPASS");
String personPK = ...;
Person person = em.find(Person.class, personPK, props);

This will fail with hibernate-entitymanager
In both above examples, setting string "BYPASS" against property "javax.persistence.cache.storeMode" will always throw Runtime Exception i.e ClassCastException stating String cannot be converted to Enum. This is due to the internal code of Hibernate class org.hibernate.ejb.AbstractEntityManagerImpl that directly casts object value to Enum without calling Enum.valueOf(String)

For Hibernate users, it should be CacheStoreMode.BYPASS insted of "BYPASS".



 Comments   
Comment by Kim Haase [ 07/Aug/14 ]

The problem does not exist with GlassFish, the supported application server for the tutorial. Users of Hibernate will need to modify source code for their platform.





[JAVAEETUTORIAL-268] Copyright header in XHTML files is sometimes inserted as the first line Created: 29/Apr/14  Updated: 15/Sep/14  Resolved: 15/Sep/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.4
Fix Version/s: 7.0.5

Type: Bug Priority: Major
Reporter: Ian Evans Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

For whatever reason, the license plugin for Maven sometimes inserts the copyright notice above the <?xml ... ?> header, which breaks JSF pages. The XML header has to be the first line of the file. The template.xhtml files appear to be affected more than others for mysterious reasons.

See, e.g., examples/persistence/address-book/src/main/webapp/template.xhtml in the latest bundle:

<!--

    Copyright (c) 2014 Oracle and/or its affiliates. All rights reserved.

    You may not modify, use, reproduce, or distribute this software except in
    compliance with  the terms of the License at:
    http://java.net/projects/javaeetutorial/pages/BerkeleyLicense

-->
<?xml version='1.0' encoding='UTF-8' ?> 
<!--

    Copyright (c) 2013 Oracle and/or its affiliates. All rights reserved.

    You may not modify, use, reproduce, or distribute this software except in
    compliance with  the terms of the License at:
    http://java.net/projects/javaeetutorial/pages/BerkeleyLicense

-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
...

Out of the box, you'll get runtime errors. Removing the first copyright header allows the app to run correctly.



 Comments   
Comment by Kim Haase [ 15/Sep/14 ]

We did a sweep and fixed these problems.





[JAVAEETUTORIAL-160] resource adapter example issues Created: 05/Apr/13  Updated: 11/Apr/13  Resolved: 11/Apr/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.8
Fix Version/s: None

Type: Bug Priority: Major
Reporter: treaz Assignee: Unassigned
Resolution: Cannot Reproduce Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 7 home edition x64



 Description   

Currently it doesn't say in the pdf tutorial what version it is (I didn't know what version to choose from the affected version dropdown... bug?). I'm usingthe January 2013 version.
I'm having a problem when building the connector:

Compiling 22 source files to C:\Program Files\glassfish-3.1.2.2\glassfish\docs\javaee-tutorial\examples\connectors\mailconnector\mailconnector-ra\build\classes
javac: invalid flag: -endorseddirs C:\Program Files\glassfish-3.1.2.2\glassfish\docs\javaee-tutorial\examples\bp-project/../../../../../glassfish/modules/endorsed
Usage: javac <options> <source files>
use -help for a list of possible options
C:\Program Files\glassfish-3.1.2.2\glassfish\docs\javaee-tutorial\examples\connectors\mailconnector\mailconnector-ra\nbproject\nbjdk.xml:8: The following error occurred while executing this line:
C:\Program Files\glassfish-3.1.2.2\glassfish\docs\javaee-tutorial\examples\bp-project\command-line-ant-tasks.xml:114: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 0 seconds)



 Comments   
Comment by Kim Haase [ 05/Apr/13 ]

January 2013 is sufficient information, thanks. The version is normally the version you installed from the Update Center; if you open that and check Installed Components, the version should be 6.0.8-1.

What is the output of the "java -version" command?

What was the output of "ant all" before the line you started with?

You have the Java EE 6 SDK installed in a nondefault location – normally the installation wizard installs it in C:\glassfish3, not in Program Files. The java command sometimes has problems with spaces in the path.

Comment by treaz [ 05/Apr/13 ]

Hello Kim,

I've checked and it is 6.0.8-1

java - v

java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) 64-Bit Server VM (build 23.5-b02, mixed mode)

I'm sorry I didn't upload a log file, but I can't see a way to do that.
https://gist.github.com/anonymous/5322945

I'm sure it's a problem with the space since removing the line with $

{glassfish.endorsed.option}

from command-line-ant-tasks.xml allowed the build to complete. However, after removing it the deploy did not create some resources in the glassfish server so I think that the line is important

Comment by treaz [ 11/Apr/13 ]

Any news on this? This is also a problem when trying to build the duke-forest example.

Comment by treaz [ 11/Apr/13 ]

Well, I worked around it... just close it.

Comment by Kim Haase [ 11/Apr/13 ]

I looked at the command output you posted on github.

I'm afraid I don't really understand why you issued the following command:

ant -f "C:
Program Files\\glassfish-3.1.2.2\\glassfish\\docs\\javaee-tutorial\\examples\\connectors\\mailconnector\\mailconnector-ra\\nbproject
nbjdk.xml" assemble_rar

We do not supply an nbjdk.xml file as part of the mailconnector-ra project. The instructions in the Tutorial simply say to go to mailconnector-ear and type "ant all" using the supplied build.xml file. If you do that and the commands fail, please let us know; feel free to copy the command output into a comment.





[JAVAEETUTORIAL-161] Fixes needed to section on CDI and resource adapters Created: 30/Apr/13  Updated: 30/Apr/13  Resolved: 30/Apr/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.8
Fix Version/s: 7.0.1

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We received the following request. In fact we had documented that you could not use a resource adapter as a managed bean, but the statement was not very clear. This will be fixed in the EE 7 tutorial.

-------- Original Message --------
Subject: Re: Injecting RA into a servlet?
Date: Thu, 25 Apr 2013 23:03:21 +0530
From: Sivakumar Thyagarajan <sivakumar.thyagarajan@oracle.com>
To: marina.vatkina@oracle.com
CC: RAMU,JAGADISH <jagadish.ramu@oracle.com>

Hi Marina

On Thursday 25 April 2013 06:25 AM, Marina Vatkina wrote:
> Siva, Jagadish,
>
> According to the Java EE Tutorial
> (http://docs.oracle.com/javaee/6/tutorial/doc/gmgjb.html) you can inject
> a RA. Are there a place to read more about it? Which API can be called
> on the injected ref? Are there any devtests that I can look at?

This appears to be an error. I will report this to the docs team to have
this fixed. Thanks for pointing this section to us.

In EE 6 the behaviour was undefined though the presence of a beans.xml
in rar would make the RAR a bean archive.

Section 21.5 in [1] now describes the new DI related requirements we
brought in the Connectors MR in EE 7. It is not recommended now to use
the ResourceAdapter class as a Bean as it is not portably supported.

Thanks
--Siva.
[1]
https://java.net/projects/connector-spec/downloads/download/connector-1_7-spec-with-change-bars-20130315-2.pdf.zip






[JAVAEETUTORIAL-149] I deployed web service but ESI did not created Created: 31/Jan/13  Updated: 06/Feb/13  Resolved: 06/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.8
Fix Version/s: None

Type: Bug Priority: Major
Reporter: karthikannadurai Assignee: Ian Evans
Resolution: Cannot Reproduce Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Platform: Linux



 Description   

I used javaee-tutorial6 for creating web service. I run the deploy command and i got deployed successfully message.
Then i put ESI(Endpoint Service Interface)url in browser, but it shows "The requested resource () is not available."
Pl help to solve this issue.



 Comments   
Comment by Ian Evans [ 31/Jan/13 ]

Which example is causing this error? Please give us the specific example, the steps you took, and error message so we can investigate.

Comment by karthikannadurai [ 01/Feb/13 ]

I am using j2eetutorial6. In that i am using the helloservice examples of jaxws.
Compile: ant
Deploy: ant deploy
I got below mentioned ESI(Endpoint Service Interface)
http://localhost:8080/helloservice
While i put into browser, i got "The requested resource () is not available" error meaasge.

Comment by Ian Evans [ 01/Feb/13 ]

Can you test the service at this URL?
http://localhost:8080/helloservice/HelloService?Tester

Comment by karthikannadurai [ 02/Feb/13 ]

Yes. I already test it and it also give same error.

Comment by Ian Evans [ 03/Feb/13 ]

I'm unable to reproduce this error. Testing at
http://localhost:8080/helloservice/HelloService?Tester
and with the clients works with no errors.

Take a look at your server.log ($glassfish_home/domains/domain1/logs/serverlog) to look for deployment or runtime errors.

Comment by karthikannadurai [ 04/Feb/13 ]

I test it. I got below message in the server.log file.
helloservice was successfully deployed

Comment by Ian Evans [ 04/Feb/13 ]

So the service is definitely deployed. You should be able to see information about the service, then, by going to the endpoint address:
http://localhost:8080/helloservice/HelloService

There is basically no way that the service was deployed correctly AND you get a "The requested resource () is not available" error message at the above URL. There is a lot more information in server.log. You can attach the server.log file and I'll take a look at it.

Comment by karthikannadurai [ 05/Feb/13 ]

This is server log file.
server.log:

Feb 5, 2013 10:59:49 AM com.sun.enterprise.admin.launcher.GFLauncherLogger info
INFO: JVM invocation command line:
/home/applir12/glassfish3/jdk/bin/java
-cp
/home/applir12/glassfish3/glassfish/modules/glassfish.jar
-XX:+UnlockDiagnosticVMOptions
-XX:MaxPermSize=192m
-XX:NewRatio=2
-Xmx512m
-javaagent:/home/applir12/glassfish3/glassfish/lib/monitor/btrace-agent.jar=unsafe=true,noServer=true
-client
-Dosgi.shell.telnet.maxconn=1
-Dfelix.fileinstall.disableConfigSave=false
-Djdbc.drivers=org.apache.derby.jdbc.ClientDriver
-Dfelix.fileinstall.dir=/home/applir12/glassfish3/glassfish/modules/autostart/
-Djavax.net.ssl.keyStore=/home/applir12/glassfish3/glassfish/domains/domain1/config/keystore.jks
-Dosgi.shell.telnet.port=6666
-Djava.security.policy=/home/applir12/glassfish3/glassfish/domains/domain1/config/server.policy
-Dfelix.fileinstall.log.level=2
-Dfelix.fileinstall.poll=5000
-Dcom.sun.aas.instanceRoot=/home/applir12/glassfish3/glassfish/domains/domain1
-Dosgi.shell.telnet.ip=127.0.0.1
-Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory
-Djava.endorsed.dirs=/home/applir12/glassfish3/glassfish/modules/endorsed:/home/applir12/glassfish3/glassfish/lib/endorsed
-Dcom.sun.aas.installRoot=/home/applir12/glassfish3/glassfish
-Dfelix.fileinstall.bundles.startTransient=true
-Djava.ext.dirs=/home/applir12/glassfish3/jdk/lib/ext:/home/applir12/glassfish3/jdk/jre/lib/ext:/home/applir12/glassfish3/glassfish/domains/domain1/lib/ext
-Dfelix.fileinstall.bundles.new.start=true
-Djavax.net.ssl.trustStore=/home/applir12/glassfish3/glassfish/domains/domain1/config/cacerts.jks
-Dorg.glassfish.additionalOSGiBundlesToStart=org.apache.felix.shell,org.apache.felix.gogo.runtime,org.apache.felix.gogo.shell,org.apache.felix.gogo.command
-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as
-Djava.security.auth.login.config=/home/applir12/glassfish3/glassfish/domains/domain1/config/login.conf
-DANTLR_USE_DIRECT_CLASS_LOADING=true
-Dgosh.args=--nointeractive
-Djava.library.path=/home/applir12/glassfish3/glassfish/lib:/home/applir12/glassfish3/jdk/jre/lib/i386/server:
/home/applir12/glassfish3/jdk/jre/lib/i386:
/home/applir12/glassfish3/jdk/lib/i386:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/jdk/jre/lib/i386:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/jdk/jre/lib/i386/server:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/jdk/jre/lib/i386/native_threads:
/ir12/d01/oracle/ir12/apps/apps_st/appl/cz/12.0.0/bin:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/lib32:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/lib:
/usr/X11R6/lib:/usr/openwin/lib:/ir12/d01/oracle/ir12/apps/apps_st/appl/sht/12.0.0/lib:
/usr/java/packages/lib/i386:/lib:/usr/lib
com.sun.enterprise.glassfish.bootstrap.ASMain
-domainname
domain1
-asadmin-args
--host,,,localhost,,,--port,,,4848,,,--secure=false,,,--terse=false,,,--echo=false,,,--interactive=true,,,start-domain,,,--verbose=false,,,--debug=false,,,--domaindir,,,/home/applir12/glassfish3/glassfish/domains,,,domain1
-instancename
server
-verbose
false
-debug
false
-asadmin-classpath
/home/applir12/glassfish3/glassfish/modules/admin-cli.jar
-asadmin-classname
com.sun.enterprise.admin.cli.AsadminMain
-upgrade
false
-type
DAS
-domaindir
/home/applir12/glassfish3/glassfish/domains/domain1
-read-stdin
true
Feb 5, 2013 10:59:50 AM com.sun.enterprise.admin.launcher.GFLauncherLogger info
INFO: Successfully launched in 15 msec.
[#|2013-02-05T11:00:01.505+0530|INFO|glassfish3.1|null|_ThreadID=1;_ThreadName=Thread-1;|Running GlassFish Version: GlassFish Server Open Source Edition 3.1 (build 43)|#]

[#|2013-02-05T11:00:01.719+0530|INFO|glassfish3.1|org.glassfish.ha.store.spi.BackingStoreFactoryRegistry|_ThreadID=10;_ThreadName=Thread-1;|Registered org.glassfish.ha.store.adapter.cache.ShoalBackingStoreProxy for persistence-type = replicated in BackingStoreFactoryRegistry|#]

[#|2013-02-05T11:00:02.940+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=32;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 396ms - bound to [0.0.0.0:8181]|#]

[#|2013-02-05T11:00:02.941+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=30;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 315ms - bound to [0.0.0.0:3700]|#]

[#|2013-02-05T11:00:02.956+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=31;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 307ms - bound to [0.0.0.0:7676]|#]

[#|2013-02-05T11:00:02.957+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=28;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 476ms - bound to [0.0.0.0:8080]|#]

[#|2013-02-05T11:00:02.958+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=29;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 395ms - bound to [0.0.0.0:4848]|#]

[#|2013-02-05T11:00:03.331+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.admin.adapter|_ThreadID=1;_ThreadName=Thread-1;|The Admin Console is already installed, but not yet loaded.|#]

[#|2013-02-05T11:00:05.785+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=1;_ThreadName=Thread-1;|SEC1002: Security Manager is OFF.|#]

[#|2013-02-05T11:00:06.194+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=1;_ThreadName=Thread-1;|SEC1010: Entering Security Startup Service|#]

[#|2013-02-05T11:00:06.212+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=1;_ThreadName=Thread-1;|SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.|#]

[#|2013-02-05T11:00:06.370+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=1;_ThreadName=Thread-1;|SEC1115: Realm [admin-realm] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.|#]

[#|2013-02-05T11:00:06.373+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=1;_ThreadName=Thread-1;|SEC1115: Realm [file] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.|#]

[#|2013-02-05T11:00:06.386+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=1;_ThreadName=Thread-1;|SEC1115: Realm [certificate] of classtype [com.sun.enterprise.security.auth.realm.certificate.CertificateRealm] successfully created.|#]

[#|2013-02-05T11:00:06.412+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=1;_ThreadName=Thread-1;|SEC1011: Security Service(s) Started Successfully|#]

[#|2013-02-05T11:00:07.800+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0169: Created HTTP listener [http-listener-1] on host/port [0.0.0.0:8080]|#]

[#|2013-02-05T11:00:07.814+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0169: Created HTTP listener [http-listener-2] on host/port [0.0.0.0:8181]|#]

[#|2013-02-05T11:00:07.826+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0169: Created HTTP listener [admin-listener] on host/port [0.0.0.0:4848]|#]

[#|2013-02-05T11:00:07.925+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0171: Created virtual server [server]|#]

[#|2013-02-05T11:00:07.931+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0171: Created virtual server [__asadmin]|#]

[#|2013-02-05T11:00:10.231+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0172: Virtual server [server] loaded default web module []|#]

[#|2013-02-05T11:00:14.164+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0671: Loading application [helloservice] at [/helloservice]|#]

[#|2013-02-05T11:00:14.167+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.server|_ThreadID=1;_ThreadName=Thread-1;|CORE10010: Loading application helloservice done in 10,572 ms|#]

[#|2013-02-05T11:00:14.171+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.server|_ThreadID=1;_ThreadName=Thread-1;|GlassFish Server Open Source Edition 3.1 (43) startup time : Felix (9,467ms), startup services(13,799ms), total(23,266ms)|#]

[#|2013-02-05T11:00:14.969+0530|INFO|glassfish3.1|javax.enterprise.system.tools.admin.org.glassfish.server|_ThreadID=45;_ThreadName=Thread-1;|JMXStartupService: Started JMXConnector, JMXService URL = service:jmx:rmi://server2.yantro.com:8686/jndi/rmi://server2.yantro.com:8686/jmxrmi|#]

[#|2013-02-05T11:00:57.371+0530|INFO|glassfish3.1|org.hibernate.validator.util.Version|_ThreadID=17;_ThreadName=Thread-1;|Hibernate Validator 4.1.0.Final|#]

[#|2013-02-05T11:00:57.402+0530|INFO|glassfish3.1|org.hibernate.validator.engine.resolver.DefaultTraversableResolver|_ThreadID=17;_ThreadName=Thread-1;|Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.|#]

[#|2013-02-05T11:00:58.720+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=62;_ThreadName=Thread-1;|WEB0671: Loading application [helloservice] at [/helloservice]|#]

[#|2013-02-05T11:00:58.778+0530|INFO|glassfish3.1|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=62;_ThreadName=Thread-1;|helloservice was successfully deployed in 1,622 milliseconds.|#]
Comment by Ian Evans [ 05/Feb/13 ]

Something is not right with your WAR. This is the relevant lines from my server.log:

[#|2013-02-03T13:31:53.361-0800|INFO|glassfish3.1.2|javax.enterprise.webservices.org.glassfish.webservices|_ThreadID=34;_ThreadName=Thread-2;|WS00018: Webservice Endpoint deployed
 Hello  listening at address at http://ievans-pc:8080/helloservice/HelloService|#]
[#|2013-02-03T13:31:54.267-0800|INFO|glassfish3.1.2|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=34;_ThreadName=Thread-2;|WEB0671: Loading application [helloservice] at [/helloservice]|#]
[#|2013-02-03T13:31:54.423-0800|INFO|glassfish3.1.2|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=34;_ThreadName=Thread-2;|helloservice was successfully deployed in 2,515 milliseconds.|#]
[#|2013-02-03T13:33:46.032-0800|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=119;_ThreadName=Thread-2;|parsing WSDL...
|#]
[#|2013-02-03T13:33:46.298-0800|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=119;_ThreadName=Thread-2;|
Generating code...
|#]
[#|2013-02-03T13:33:46.360-0800|INFO|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=119;_ThreadName=Thread-2;|
Compiling code...
|#]
[#|2013-02-03T13:33:46.891-0800|INFO|glassfish3.1.2|javax.enterprise.webservices.org.glassfish.webservices.monitoring|_ThreadID=119;_ThreadName=Thread-2;|Invoking wsimport with http://localhost:8080/helloservice/HelloService?WSDL|#]
[#|2013-02-03T13:33:46.891-0800|INFO|glassfish3.1.2|javax.enterprise.webservices.org.glassfish.webservices.monitoring|_ThreadID=119;_ThreadName=Thread-2;|wsimport successful|#]

I want you to do a first clean up your environment, then rebuild and deploy the WAR, and see if the same behavior occurs again. If it does, I want you to add the WAR as an attachment to this issue. So please follow these steps:

  1. Undeploy the current helloservice.
    ant undeploy
  2. Restart GlassFish.
    ${glassfish_home}/bin/asadmin stop-domain domain1
    ${glassfish_home}/bin/asadmin start-domain domain1
  3. Clean your workspace.
    ant clean
  4. Build and deploy helloservice.
    ant all
  5. Open the server.log file and look for "Webservice Endpoint deployed Hello listening at http://localhost:8080/helloservice/HelloService". If it's there, test it at http://localhost:8080/helloservice/HelloService?Tester.
  6. If it's not there, and you get the same error at the test URL, attach the helloservice.war in the dist directory to this issue.
Comment by karthikannadurai [ 05/Feb/13 ]

I do not know how to attach a file with this place. Please give any idea.

Comment by karthikannadurai [ 05/Feb/13 ]

I extract my helloservice.war. I got below mentioned files.

META-INF/
META-INF/MANIFEST.MF
WEB-INF/
WEB-INF/classes/
WEB-INF/classes/META-INF/
WEB-INF/sun-web.xml
WEB-INF/web.xml

It did not contains wsdl and class files. What mistake i did?

Comment by Ian Evans [ 05/Feb/13 ]

I've never seen this before. Please send the entire output of the build step:

ant
Comment by karthikannadurai [ 05/Feb/13 ]

While i run ant i got below mentioned messages.

[applir12@server2 helloservice]$ ant
Buildfile: build.xml

-pre-init:

init:

default-ear:

-pre-compile:

bpp-actual-compilation:
     [echo] Compiling helloservice
     [echo] javaee.classpath.prefix is: /home/applir12/glassfish3/glassfish/lib
     [echo] is.glassfish.v3 is: ${is.glassfish.v3}


-post-compile:

compile:

package:
    [mkdir] Created dir: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war

bp-copy-classes:
    [mkdir] Created dir: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war/WEB-INF/classes
     [copy] Copying 1 file to /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war/WEB-INF/classes
     [copy] Copying 3 files to /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war

bpp-package-persistence-unit-war:
    [mkdir] Created dir: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war/WEB-INF/classes/META-INF
     [copy] Warning: Could not find file /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/src/conf/persistence.xml to copy.
     [copy] Warning: Could not find file /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/src/conf/persistence.xml to copy.

bpp-package-persistence-unit-ejb-jar:

package-persistence-unit:
   [delete] Deleting: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/helloservice.war
      [jar] Building jar: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/helloservice.war
   [delete] Deleting directory /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war

bpp-copy-dist:
     [copy] Copying 1 file to /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/dist

default-not-ear:

default:

BUILD SUCCESSFUL
Total time: 0 seconds
[applir12@server2 helloservice]$
Comment by Ian Evans [ 05/Feb/13 ]

This line indicates that something is wrong with your configuration:

[echo] javaee.classpath.prefix is: /home/applir12/glassfish3/glassfish/lib
[echo] is.glassfish.v3 is: ${is.glassfish.v3}

The is.glassfish.v3 property should resolve to true. The build files set is.glassfish.v3 based on the javaee.home property, which is likely not correct. How did you install the Tutorial? From the GlassFish Update Center?

What is contents of $

{tutorial_home}

/examples/bp-project/build.properties?

Comment by karthikannadurai [ 06/Feb/13 ]

This is my build.property file:

# Sets the property javaee.home, using the path to your 
# GlassFish installation.
# 
# If you installed the Tutorial using the Update Tool,
# don't modify this property.
#
javaee.home=/home/applir12/glassfish3/glassfish

# Sets the property javaee.tutorial.home to the location where you 
# installed the Java EE Tutorial bundle.
#
# If you installed the Tutorial using the Update Tool,
# don't modify this property
#
javaee.tutorial.home=/ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial

# machine name (or the IP address) where the applications will be deployed.
javaee.server.name=server2.yantro.com

# port number where GlassFish applications are accessed by users
javaee.server.port=8080

# port number where the Admin Console of GlassFish is available
javaee.adminserver.port=4848


# If you specified an admin username when you installed GlassFish v3
# uncomment the property javaee.server.username, 
# and replace the administrator username of the app-server 
#javaee.server.username=admin

# If specified a password when you installed GlassFish v3
# uncomment the property javaee.server.passwordfile, 
# and replace the following line to point to a file that 
# contains the admin password for your app-server. 
# The file should contain the password in the following line: 
#
#AS_ADMIN_PASSWORD=adminadmin
#
# Notice that the password is adminadmin since this is 
# the default password used by GlassFish.
#
#javaee.server.passwordfile=${javaee.tutorial.home}/examples/common/admin-password.txt

appserver.instance=server

# Uncomment and set this property to the location of the browser you 
# choose to launch when an application is deployed.
# On Windows and Mac OS X the OS default browser is used.
default.browser=/usr/bin/firefox

# Database vendor property for db tasks
# JavaDB is the default database vendor. See the settings in javadb.properties
db.vendor=javadb
Comment by Ian Evans [ 06/Feb/13 ]

Ok, your javaee.home property isn't set correctly. It should be:

javaee.home=/home/applir12/glassfish3
Comment by karthikannadurai [ 06/Feb/13 ]

I modified it.
javaee.home=/home/applir12/glassfish3
Then i got below message while i run the ant.Till now service did not created.

[applir12@server2 helloservice]$ ant
Buildfile: build.xml

-pre-init:

init:

default-ear:

-pre-compile:

bpp-actual-compilation:
     [echo] Compiling helloservice
     [echo] javaee.classpath.prefix is: /home/applir12/glassfish3/glassfish/modules
     [echo] is.glassfish.v3 is: true


-post-compile:

compile:

package:
    [mkdir] Created dir: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war

bp-copy-classes:
    [mkdir] Created dir: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war/WEB-INF/classes
     [copy] Copying 2 files to /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/web
     [copy] Copying 2 files to /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war

bpp-package-persistence-unit-war:
    [mkdir] Created dir: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war/WEB-INF/classes/META-INF
     [copy] Warning: Could not find file /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/src/conf/persistence.xml to copy.
     [copy] Warning: Could not find file /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/src/conf/persistence.xml to copy.

bpp-package-persistence-unit-ejb-jar:

package-persistence-unit:
      [jar] Building jar: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/helloservice.war
   [delete] Deleting directory /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/build/war

bpp-copy-dist:
    [mkdir] Created dir: /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/dist
     [copy] Copying 1 file to /ir12/d01/oracle/ir12/apps/apps_st/comn/java/classes/oracle/apps/xxpyx/webservices/javaee-tutorial/examples/jaxws/helloservice/dist

default-not-ear:

default:

BUILD SUCCESSFUL
Total time: 0 seconds
[applir12@server2 helloservice]$
Comment by Ian Evans [ 06/Feb/13 ]

Have you tried deploying it? The output looks correct. The warnings about persistence.xml not being found can be ignored.

Comment by karthikannadurai [ 06/Feb/13 ]

I run the deploy command and i got below message but service did not created.

[applir12@server2 helloservice]$ ant deploy
Buildfile: build.xml

check:

tools:

-pre-deploy:

deploy:
     [echo] Admin: /home/applir12/glassfish3/bin/asadmin
     [exec] Application deployed with name helloservice.
     [exec] Command deploy executed successfully.

deploy-url-message:
     [echo] Application Deployed at: http://server2.yantro.com:8080/helloservice

BUILD SUCCESSFUL
Total time: 6 seconds
[applir12@server2 helloservice]$
Comment by Ian Evans [ 06/Feb/13 ]

I can't help you if you're not going to provide any additional information.

The application deployed, and presumably compiled and built a WAR with the HelloService class. If that is not the case, post the complete server.log entries (wrapped with {code} tags please).

Comment by karthikannadurai [ 06/Feb/13 ]

This is my server log file.

Feb 7, 2013 12:41:49 AM com.sun.enterprise.admin.launcher.GFLauncherLogger info
INFO: JVM invocation command line:
/home/applir12/glassfish3/jdk/bin/java
-cp
/home/applir12/glassfish3/glassfish/modules/glassfish.jar
-XX:+UnlockDiagnosticVMOptions
-XX:MaxPermSize=192m
-XX:NewRatio=2
-Xmx512m
-javaagent:/home/applir12/glassfish3/glassfish/lib/monitor/btrace-agent.jar=unsafe=true,noServer=true
-client
-Dosgi.shell.telnet.maxconn=1
-Dfelix.fileinstall.disableConfigSave=false
-Djdbc.drivers=org.apache.derby.jdbc.ClientDriver
-Dfelix.fileinstall.dir=/home/applir12/glassfish3/glassfish/modules/autostart/
-Djavax.net.ssl.keyStore=/home/applir12/glassfish3/glassfish/domains/domain1/config/keystore.jks
-Dosgi.shell.telnet.port=6666
-Djava.security.policy=/home/applir12/glassfish3/glassfish/domains/domain1/config/server.policy
-Dfelix.fileinstall.log.level=2
-Dfelix.fileinstall.poll=5000
-Dcom.sun.aas.instanceRoot=/home/applir12/glassfish3/glassfish/domains/domain1
-Dosgi.shell.telnet.ip=127.0.0.1
-Dcom.sun.enterprise.config.config_environment_factory_class=com.sun.enterprise.config.serverbeans.AppserverConfigEnvironmentFactory
-Djava.endorsed.dirs=/home/applir12/glassfish3/glassfish/modules/endorsed:/home/applir12/glassfish3/glassfish/lib/endorsed
-Dcom.sun.aas.installRoot=/home/applir12/glassfish3/glassfish
-Dfelix.fileinstall.bundles.startTransient=true
-Djava.ext.dirs=/home/applir12/glassfish3/jdk/lib/ext:/home/applir12/glassfish3/jdk/jre/lib/ext:/home/applir12/glassfish3/glassfish/domains/domain1/lib/ext
-Dfelix.fileinstall.bundles.new.start=true
-Djavax.net.ssl.trustStore=/home/applir12/glassfish3/glassfish/domains/domain1/config/cacerts.jks
-Dorg.glassfish.additionalOSGiBundlesToStart=org.apache.felix.shell,org.apache.felix.gogo.runtime,org.apache.felix.gogo.shell,org.apache.felix.gogo.command
-Dcom.sun.enterprise.security.httpsOutboundKeyAlias=s1as
-Djava.security.auth.login.config=/home/applir12/glassfish3/glassfish/domains/domain1/config/login.conf
-DANTLR_USE_DIRECT_CLASS_LOADING=true
-Dgosh.args=--nointeractive
-Djava.library.path=/home/applir12/glassfish3/glassfish/lib:/home/applir12/glassfish3/jdk/jre/lib/i386/server:
/home/applir12/glassfish3/jdk/jre/lib/i386:/home/applir12/glassfish3/jdk/lib/i386:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/jdk/jre/lib/i386:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/jdk/jre/lib/i386/server:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/jdk/jre/lib/i386/native_threads:
/ir12/d01/oracle/ir12/apps/apps_st/appl/cz/12.0.0/bin:/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/lib32:
/ir12/d01/oracle/ir12/apps/tech_st/10.1.2/lib:/usr/X11R6/lib:
/usr/openwin/lib:/ir12/d01/oracle/ir12/apps/apps_st/appl/sht/12.0.0/lib:
/usr/java/packages/lib/i386:/lib:/usr/lib
com.sun.enterprise.glassfish.bootstrap.ASMain
-domainname
domain1
-asadmin-args
--host,,,localhost,,,--port,,,4848,,,--secure=false,,,--terse=false,,,--echo=false,,,--interactive=true,,,start-domain,,,--verbose=false,,,--debug=false,,,--domaindir,,,/home/applir12/glassfish3/glassfish/domains,,,domain1
-instancename
server
-verbose
false
-debug
false
-asadmin-classpath
/home/applir12/glassfish3/glassfish/modules/admin-cli.jar
-asadmin-classname
com.sun.enterprise.admin.cli.AsadminMain
-upgrade
false
-type
DAS
-domaindir
/home/applir12/glassfish3/glassfish/domains/domain1
-read-stdin
true
Feb 7, 2013 12:41:49 AM com.sun.enterprise.admin.launcher.GFLauncherLogger info
INFO: Successfully launched in 5 msec.
[#|2013-02-07T00:41:57.030+0530|INFO|glassfish3.1|null|_ThreadID=1;_ThreadName=Thread-1;|Running GlassFish Version: GlassFish Server Open Source Edition 3.1 (build 43)|#]

[#|2013-02-07T00:41:57.159+0530|INFO|glassfish3.1|org.glassfish.ha.store.spi.BackingStoreFactoryRegistry|_ThreadID=10;_ThreadName=Thread-1;|Registered org.glassfish.ha.store.adapter.cache.ShoalBackingStoreProxy for persistence-type = replicated in BackingStoreFactoryRegistry|#]

[#|2013-02-07T00:41:57.944+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=29;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 383ms - bound to [0.0.0.0:8080]|#]

[#|2013-02-07T00:41:57.945+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.admin.adapter|_ThreadID=1;_ThreadName=Thread-1;|The Admin Console is already installed, but not yet loaded.|#]

[#|2013-02-07T00:41:57.946+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=30;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 332ms - bound to [0.0.0.0:3700]|#]

[#|2013-02-07T00:41:57.947+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=32;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 328ms - bound to [0.0.0.0:7676]|#]

[#|2013-02-07T00:41:57.944+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=31;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 353ms - bound to [0.0.0.0:8181]|#]

[#|2013-02-07T00:41:57.949+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.services.impl|_ThreadID=28;_ThreadName=Thread-1;|Grizzly Framework 1.9.31 started in: 349ms - bound to [0.0.0.0:4848]|#]

[#|2013-02-07T00:42:01.493+0530|INFO|glassfish3.1|javax.enterprise.webservices.org.glassfish.webservices.metroglue|_ThreadID=1;_ThreadName=Thread-1;|WS10010: Web service endpoint deployment events listener registered successfully.|#]

[#|2013-02-07T00:42:01.935+0530|WARNING|glassfish3.1|global|_ThreadID=10;_ThreadName=Thread-1;|Cannot load appclient.HelloAppClient reason : appclient.HelloAppClient
java.lang.ClassNotFoundException: appclient.HelloAppClient
	at com.sun.enterprise.loader.ASURLClassLoader.findClassData(ASURLClassLoader.java:808)
	at com.sun.enterprise.loader.ASURLClassLoader.findClass(ASURLClassLoader.java:696)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
	at com.sun.enterprise.deployment.annotation.impl.ModuleScanner.getElements(ModuleScanner.java:361)
	at com.sun.enterprise.deployment.archivist.Archivist.processAnnotations(Archivist.java:565)
	at com.sun.enterprise.deployment.archivist.Archivist.readAnnotations(Archivist.java:445)
	at com.sun.enterprise.deployment.archivist.Archivist.readAnnotations(Archivist.java:432)
	at com.sun.enterprise.deployment.archivist.Archivist.readRestDeploymentDescriptors(Archivist.java:408)
	at com.sun.enterprise.deployment.archivist.Archivist.readDeploymentDescriptors(Archivist.java:383)
	at com.sun.enterprise.deployment.archivist.Archivist.open(Archivist.java:246)
	at com.sun.enterprise.deployment.archivist.Archivist.open(Archivist.java:255)
	at com.sun.enterprise.deployment.archivist.Archivist.open(Archivist.java:216)
	at com.sun.enterprise.deployment.archivist.ApplicationFactory.openArchive(ApplicationFactory.java:165)
	at org.glassfish.javaee.core.deployment.DolProvider.load(DolProvider.java:180)
	at org.glassfish.javaee.core.deployment.DolProvider.load(DolProvider.java:93)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.loadDeployer(ApplicationLifecycle.java:826)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.setupContainerInfos(ApplicationLifecycle.java:768)
	at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:368)
	at com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:364)
	at com.sun.enterprise.v3.server.ApplicationLoaderService.postConstruct(ApplicationLoaderService.java:208)
	at com.sun.hk2.component.AbstractCreatorImpl.inject(AbstractCreatorImpl.java:131)
	at com.sun.hk2.component.ConstructorCreator.initialize(ConstructorCreator.java:91)
	at com.sun.hk2.component.AbstractCreatorImpl.get(AbstractCreatorImpl.java:82)
	at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:67)
	at com.sun.hk2.component.EventPublishingInhabitant.get(EventPublishingInhabitant.java:139)
	at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:76)
	at com.sun.enterprise.v3.server.AppServerStartup.run(AppServerStartup.java:243)
	at com.sun.enterprise.v3.server.AppServerStartup.start(AppServerStartup.java:135)
	at com.sun.enterprise.glassfish.bootstrap.GlassFishImpl.start(GlassFishImpl.java:79)
	at com.sun.enterprise.glassfish.bootstrap.GlassFishMain$Launcher.launch(GlassFishMain.java:117)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.sun.enterprise.glassfish.bootstrap.GlassFishMain.main(GlassFishMain.java:97)
	at com.sun.enterprise.glassfish.bootstrap.ASMain.main(ASMain.java:55)
|#]

[#|2013-02-07T00:42:02.840+0530|INFO|glassfish3.1|javax.enterprise.system.container.appclient.org.glassfish.appclient.server.core|_ThreadID=1;_ThreadName=Thread-1;|ACDEPL103: Java Web Start services started for the app client appclient (contextRoot: /appclient)|#]

[#|2013-02-07T00:42:02.845+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.server|_ThreadID=1;_ThreadName=Thread-1;|CORE10010: Loading application appclient done in 4,750 ms|#]

[#|2013-02-07T00:42:02.967+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=1;_ThreadName=Thread-1;|SEC1002: Security Manager is OFF.|#]

[#|2013-02-07T00:42:03.181+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=1;_ThreadName=Thread-1;|SEC1010: Entering Security Startup Service|#]

[#|2013-02-07T00:42:03.197+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=1;_ThreadName=Thread-1;|SEC1143: Loading policy provider com.sun.enterprise.security.provider.PolicyWrapper.|#]

[#|2013-02-07T00:42:03.256+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=1;_ThreadName=Thread-1;|SEC1115: Realm [admin-realm] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.|#]

[#|2013-02-07T00:42:03.261+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=1;_ThreadName=Thread-1;|SEC1115: Realm [file] of classtype [com.sun.enterprise.security.auth.realm.file.FileRealm] successfully created.|#]

[#|2013-02-07T00:42:03.265+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security.auth.realm|_ThreadID=1;_ThreadName=Thread-1;|SEC1115: Realm [certificate] of classtype [com.sun.enterprise.security.auth.realm.certificate.CertificateRealm] successfully created.|#]

[#|2013-02-07T00:42:03.278+0530|INFO|glassfish3.1|javax.enterprise.system.core.security.com.sun.enterprise.security|_ThreadID=1;_ThreadName=Thread-1;|SEC1011: Security Service(s) Started Successfully|#]

[#|2013-02-07T00:42:03.660+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0169: Created HTTP listener [http-listener-1] on host/port [0.0.0.0:8080]|#]

[#|2013-02-07T00:42:03.665+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0169: Created HTTP listener [http-listener-2] on host/port [0.0.0.0:8181]|#]

[#|2013-02-07T00:42:03.669+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0169: Created HTTP listener [admin-listener] on host/port [0.0.0.0:4848]|#]

[#|2013-02-07T00:42:03.710+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0171: Created virtual server [server]|#]

[#|2013-02-07T00:42:03.713+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0171: Created virtual server [__asadmin]|#]

[#|2013-02-07T00:42:04.059+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0172: Virtual server [server] loaded default web module []|#]

[#|2013-02-07T00:42:05.720+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=1;_ThreadName=Thread-1;|WEB0671: Loading application [helloservice] at [/helloservice]|#]

[#|2013-02-07T00:42:05.721+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.server|_ThreadID=1;_ThreadName=Thread-1;|CORE10010: Loading application helloservice done in 2,874 ms|#]

[#|2013-02-07T00:42:05.722+0530|INFO|glassfish3.1|javax.enterprise.system.core.com.sun.enterprise.v3.server|_ThreadID=1;_ThreadName=Thread-1;|GlassFish Server Open Source Edition 3.1 (43) startup time : Felix (6,438ms), startup services(9,340ms), total(15,778ms)|#]

[#|2013-02-07T00:42:06.711+0530|INFO|glassfish3.1|javax.enterprise.system.tools.admin.org.glassfish.server|_ThreadID=49;_ThreadName=Thread-1;|JMXStartupService: Started JMXConnector, JMXService URL = service:jmx:rmi://server2.yantro.com:8686/jndi/rmi://server2.yantro.com:8686/jmxrmi|#]

[#|2013-02-07T00:43:35.367+0530|INFO|glassfish3.1|org.hibernate.validator.util.Version|_ThreadID=17;_ThreadName=Thread-1;|Hibernate Validator 4.1.0.Final|#]

[#|2013-02-07T00:43:35.376+0530|INFO|glassfish3.1|org.hibernate.validator.engine.resolver.DefaultTraversableResolver|_ThreadID=17;_ThreadName=Thread-1;|Instantiated an instance of org.hibernate.validator.engine.resolver.JPATraversableResolver.|#]

[#|2013-02-07T00:43:35.678+0530|INFO|glassfish3.1|javax.enterprise.system.container.web.com.sun.enterprise.web|_ThreadID=65;_ThreadName=Thread-1;|WEB0671: Loading application [helloservice] at [/helloservice]|#]

[#|2013-02-07T00:43:35.705+0530|INFO|glassfish3.1|javax.enterprise.system.tools.admin.org.glassfish.deployment.admin|_ThreadID=65;_ThreadName=Thread-1;|helloservice was successfully deployed in 411 milliseconds.|#]

Comment by Ian Evans [ 06/Feb/13 ]

What are the contents of the WAR?

Comment by Ian Evans [ 06/Feb/13 ]

Also, make sure you follow the steps I posted above to clean your environment.

If you can't get a WAR file with the HelloService.class file in it after cleaning and rebuilding with the correct javaee.home property set, you're going to have to start with the latest version of the Tutorial examples and SDK.

That means:

  1. Install Java EE 6 SDK update 4 (with GlassFish 3.1.2).
  2. Update to version 6.0.8 of the Java EE 6 Tutorial from the Update Center. This will install the Tutorial in $ {glassfish_home}

    /glassfish/docs/javaee-tutorial.

When you install the Tutorial from the Update Center, you don't have to worry about setting javaee.home or any other configuration. The examples in version 6.0.8 of the Tutorial have been thoroughly tested, including helloservice.

Comment by karthikannadurai [ 06/Feb/13 ]

In the helloservice.war contain below files
META-INF: MANIFEST.MF
WEB-INF: classes/META-INF
sun-web.xml
web.xml

It does not contain wsdl file and class file. I created one war file with one HelloService.wsdl file and Hello.class. I run the deploy command and its worked fine(service created successfully). What i have to do?

Comment by Ian Evans [ 06/Feb/13 ]

I don't know where you got your Tutorial install, as it is in a nonstandard location. I can't verify that it is a version that we've tested based on the information you've given. Therefore I'm closing this as Cannot Reproduce.

You can install Java EE 6 SDK update 4 and version 6.0.8 of the Tutorial, as I've said above. If you get the same error in version 6.0.8 of helloservice, and verify that the output WAR doesn't contain a class file or WSDL, you can reopen this issue.





[JAVAEETUTORIAL-157] DukesAgeResource Example Application HTTP Status 404 - The requested resource () is not available. Created: 23/Feb/13  Updated: 25/Feb/13  Resolved: 25/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: Gekut Assignee: Ian Evans
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

NetBeans IDE 7.2.1


Issue Links:
Duplicate
duplicates FIRSTCUP-9 JAX-RS runtime mapping in NetBeans 7.... Resolved

 Description   

If to run the sample, it produces the error 'The requested resource () is not available' in a web browser. It happens because NetBeans generates ApplicationConfig.java file in which overrides the ApplicationPath and sets it to "webresources". Thus, to configure the example properly the Project Properties -> Run -> Relative URL must be set to /weresources/dukesAge.



 Comments   
Comment by Ian Evans [ 25/Feb/13 ]

Duplicate, and should be logged against First Cup.





[JAVAEETUTORIAL-116] give example of binding Created: 28/Jun/12  Updated: 24/Apr/13  Resolved: 24/Apr/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 7.0.1

Type: Improvement Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In the section on "The value and binding Attributes" on the page entitled "Adding Components to a Page Using HTML Tags" at http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html, I'd like to see an example of the binding attribute. In ramping up on PrimeFaces and JSF in general, I've seen several components having the binding attribute, but I haven't seen any good documentation on its use yet. I think a little more description would be helpful in this part of the tutorial.



 Comments   
Comment by Kim Haase [ 06/Jul/12 ]

We need at least to provide a forward reference to where the binding attribute is discussed ("Writing Properties Bound to Component Instances" in Chapter 9), and possibly to improve the explanation in that section. The discussion of both the value and binding attributes belongs in Chapter 9 because it's more closely related to the writing of managed beans than to the writing of Facelets pages.

Comment by Kim Haase [ 24/Apr/13 ]

Fixed for 7.0.1.





[JAVAEETUTORIAL-111] sentence is wrong and links to incorrect place Created: 28/Jun/12  Updated: 16/Aug/12  Resolved: 16/Aug/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-6

Type: Bug Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This issue occurs on the page entitled "Adding Components to a Page Using HTML Tags" at http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html. The second to last sentence under "The id Attribute" indicates "Unlike most other JavaServer Faces tag attributes, the id attribute takes expressions using only the evaluation syntax described in The immediate Attribute, which uses the ${} delimiters." The part about "The immediate Attribute" including where that text links is incorrect. I believe that is supposed to refer to the immediately evaluated EL expressions as opposed to the deferred evaluation EL expressions and should link to an appropriate location on the "Value and Method Expressions" page at http://docs.oracle.com/javaee/6/tutorial/doc/bnahu.htm.



 Comments   
Comment by Kim Haase [ 06/Jul/12 ]

Good catch. I think it needs to refer to http://docs.oracle.com/javaee/6/tutorial/doc/bnahr.html#bnahs, actually. Thank you.

Comment by Kim Haase [ 16/Aug/12 ]

Corrected the cross-reference to the expression language section.





[JAVAEETUTORIAL-110] incorrect XML syntax in rendered as list Created: 28/Jun/12  Updated: 16/Aug/12  Resolved: 16/Aug/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-6

Type: Bug Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This issue occurs in a few places on http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html entitled "Adding Components to a Page Using HTML Tags". This issue is in the third column of "Table 7-1 The Component Tags"

There are examples of renderings such as <input type=type>. However, these are actually output as quoted attributes so <input type="type"> is more accurate. Unquoted attributes are only valid in regular SGML-based HTML, not the more modern XHTML where it isn't even considered well-formed XML and would cause a parse error if it were actually rendered that way and processed through an XML parser.



 Comments   
Comment by Kim Haase [ 06/Jul/12 ]

Thanks for pointing this out. The problem's been there since EE 5.

Comment by Kim Haase [ 16/Aug/12 ]

Checked in fix to numerous rows in table that did not quote HTML tag attribute values.





[JAVAEETUTORIAL-106] make the task steps demonstrable Created: 24/Jun/12  Updated: 16/Oct/12  Resolved: 16/Oct/12

Status: Closed
Project: javaeetutorial
Component/s: doc, examples
Affects Version/s: 6.0.7-5
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This issue occurs on the page at http://docs.oracle.com/javaee/6/tutorial/doc/bnaeo.html. There are several sections describing how to add error pages, context parameters, and initialization parameters. However, all of those talk in generalities instead of specifying sequences of steps that can be taken with the hello2 project to see the results.

As an example, I'd suggest including an error page in the project that isn't hooked up, and include an error that triggers it. The task sequence hooks up the error page, and the user can see the effect of the actions.



 Comments   
Comment by Kim Haase [ 16/Oct/12 ]

There are examples elsewhere of the use of context parameters and error pages, and it's best not to overcomplicate this example.





[JAVAEETUTORIAL-105] exception and throwable are confused Created: 24/Jun/12  Updated: 16/Aug/12  Resolved: 14/Aug/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-6

Type: Bug Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This issue occurs on the page at http://docs.oracle.com/javaee/6/tutorial/doc/bnaeo.html. Under step 10 of the "To Set Up Error Mapping Using NetBeans IDE" section, it states "To specify all exceptions, type java.lang.Throwable." java.lang.Throwable encompasses both errors and exceptions. To make this statement correct, I suggest either "To specify all exceptions, type java.lang.Exception," or "To specify all throwable errors and exceptions, type java.lang.Throwable," depending on what is meant to be conveyed.



 Comments   
Comment by Kim Haase [ 14/Aug/12 ]

Committed fix that changes the language in accordance with the second suggestion and also clarifies that you can specify either an Error Code or an Exception Type, but not both.





[JAVAEETUTORIAL-104] Conditionally dependent step is missing Created: 24/Jun/12  Updated: 16/Aug/12  Resolved: 13/Aug/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-6

Type: Bug Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File lack of initialization parameters section.PNG    

 Description   

This issue occurs on http://docs.oracle.com/javaee/6/tutorial/doc/bnaeo.html. There is a sequence of steps under "To Add an Initialization Parameter Using NetBeans IDE" that assumes a servlet element is in the web.xml file. If there is no servlet, there is no initialization parameters section on the Servlets screen. I have attached a screenshot demonstrating the lack of initialization parameters when there is no servlet section.



 Comments   
Comment by Kim Haase [ 13/Aug/12 ]

This task is too advanced for the introductory chapter on web applications. Init params (unlike context params) are, as you note, specific to servlets. They are described in the Java Servlet Technology chapter and should not be mentioned in this one, so we will remove that section and make a few changes in the servlet chapter.

Comment by Kim Haase [ 13/Aug/12 ]

Checked in fixes to webapp and servlets chapters.





[JAVAEETUTORIAL-101] Incorrect file extension used in documentation related to hello1 example Created: 21/Jun/12  Updated: 21/Jun/12  Resolved: 21/Jun/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-3
Fix Version/s: 6.0.7-4

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The following problem was reported by a user.

This issue occurs at http://docs.oracle.com/javaee/6/tutorial/doc/bnadx.html
This is the "Web Modules: The hello1 Example" page.
This is under the "To View the hello1 Web Module Using NetBeans IDE"
contents item.

After the numbered list, the first sentence of the next paragraph is
"The index.html file is the default landing page for a Facelets
application."

The file name is incorrect. The correct file extension is "xhtml".

The corrected sentence is "The index.xhtml file is the default landing
page for a Facelets application."



 Comments   
Comment by Kim Haase [ 21/Jun/12 ]

Committed documentation change for next tutorial update.





[JAVAEETUTORIAL-122] clarify UI restraint versus validation Created: 10/Jul/12  Updated: 16/Aug/12  Resolved: 27/Jul/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-5

Type: Improvement Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This issue occurs on the page titled "Using the Standard Validators" at http://docs.oracle.com/javaee/6/tutorial/doc/bnatc.html. Under the section titled "Using LongRangeValidator" you might clarify that size does not do any validation. Size only sets the size attribute on the rendered input field which, only in that rendered interface will restrict input to a certain length. There is nothing preventing an appropriate GET or POST request from specifying a field value that exceeds the set length. To actually validate the length, you'd need a validator.



 Comments   
Comment by Kim Haase [ 24/Jul/12 ]

Thanks for catching this misleading language.

Comment by Kim Haase [ 27/Jul/12 ]

Removed the irrelevant sentence about the size attribute of inputText.





[JAVAEETUTORIAL-123] bad example allows for possible bug Created: 11/Jul/12  Updated: 18/Oct/12  Resolved: 18/Oct/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This occurs on the "Writing Bean Properties" page at http://docs.oracle.com/javaee/6/tutorial/doc/bnaty.html. Just before the "UIData Properties" heading, there is an example Bean property for a Date field. Date is a mutable type, and the getter and setter are both public. This allows another potentially malicious class to get a reference to the Date field and modify it without the knowledge of the class. This is generally something that be defended against by creating a copy of the date when it is set or when the getter is called. This prevents you from setting the Date field to a Date value that another class can still manipulate and prevents another class the gets the Date from modifying the date without the knowledge of the class. Another, potentially better option if the methods need not be public would be to reduce the visibility to something less than public.



 Comments   
Comment by Brant Gurganus [ 11/Jul/12 ]

Similar issues for DateTimeConverter, UIOutput, String[], SelectItem, and UISelectBoolean occur toward the end of the page under the headings "UISelectItem Properties," "UISelectItems Properties," "Writing Properties Bound to Component Instances," and "Writing Properties Bound to Converters, Listeners, or Validators." Each of those types are mutable properties with no protections from misbehaving callers.

Comment by Kim Haase [ 18/Oct/12 ]

Fixing this would overcomplicate the discussion of managed bean properties in the tutorial, where the focus is on the JavaServer Faces API.





[JAVAEETUTORIAL-121] technically unspecified default is unspecified not first item Created: 07/Jul/12  Updated: 24/Apr/13  Resolved: 24/Apr/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 7.0.1

Type: Bug Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In the second to last paragraph under the "Displaying a Menu Using the h:selectOneMenu Tag" section of the "Adding Components to a Page Using HTML Tags" page at http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html, it indicates that, "If you don't provide a value, the first item in the list is selected by default." However, this is inaccurate. I have tested this out, and it renders as a <select> element with nested <options>. No <option> is marked as selected. If you look at the HTML 4.01 specification under section 17.6.1 at http://www.w3.org/TR/html4/interact/forms.html#h-17.6.1, you will see that it indicates that "If no OPTION element has the selected attribute set, user agent behavior for choosing which option is initially selected is undefined."



 Comments   
Comment by Brant Gurganus [ 07/Jul/12 ]

This unspecified selection issue also occurs in the following "Displaying Components for Selecting Multiple Values" section as well.

Comment by Kim Haase [ 09/Jul/12 ]

I've tried this, and JSF does consider the first item as selected if you use a selectOneMenu tag – but not if you use selectOneListbox or selectOneRadio. (If you output the selected values on a response page, you can see the effect.)

Comment by Brant Gurganus [ 10/Jul/12 ]

JSF considering the first item as selected is incorrect. It is the browser making that judgment. If you look at the HTML specification excerpt, nothing requires the first option to be the selected one. Most browsers will do so though. Because of the implementation detail, the first item gets submitted as the value. It's not a blank value being submitted. However, that is not JSF doing so. That is the browser doing so. Some browsers might pick the third option instead. There's no requirement that it be the first item.

If you were correct, an <h:selectOneMenu> with no value would render as:
<select><option selected="selected">a</option><option>b</option></select>

Instead, it renders as:
<select><option>a</option><option>b</option></select>

That second rendering leaves you in unspecified territory for which item to select initially.

Comment by Kim Haase [ 11/Jul/12 ]

Thanks, Brant. I expect you are correct and am checking with the spec leads to confirm, since the misinformation has been in the tutorial since EE 5.

Comment by Kim Haase [ 24/Apr/13 ]

Fixed in 7.0.1.





[JAVAEETUTORIAL-119] example has rendered="false" Created: 07/Jul/12  Updated: 13/Mar/13  Resolved: 13/Mar/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 7.0.0

Type: Bug Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The example under "Displaying a Check Box Using the h:selectBooleanCheckbox Tag" on the page at http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html titled "Adding Components to a Page Using HTML Tags" has rendered="false" but is described as "[...] displays a check box [...]". For that to be correct, I believe the JSF tag should have rendered="true" or unspecified.



 Comments   
Comment by Kim Haase [ 09/Jul/12 ]

Thanks for catching this. in the actual example the tags are rendered only under certain circumstances, and we should clarify that and mention where the example comes from.

Comment by Kim Haase [ 06/Nov/12 ]

Actually, elsewhere in this chapter are several occurrences of the same section of code with the rendered attribute line removed, since it isn't material to what's being explained. I've removed the line from this section too. I'm considering adding another paragraph to the section on the rendered attribute earlier in the chapter because this is a situation where the default is false but the value can be set to true in the managed bean under certain circumstances.

Comment by Kim Haase [ 13/Mar/13 ]

Added explanations in chapter.





[JAVAEETUTORIAL-96] Duke's Bookstore show-cart page doesn't show updated quantities correctly Created: 07/Jun/12  Updated: 07/Jun/12  Resolved: 07/Jun/12

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.7-3
Fix Version/s: 6.0.7-4

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I think the input field that updates the quantities on the bookshowcart.xhtml page should have a ValueChangeListener on it so that the ShowCartBean can react correctly when the user clicks Update Quantities. Currently the update method of this bean does not work correctly, although the quantity in the shopping cart is correct.



 Comments   
Comment by Kim Haase [ 07/Jun/12 ]

Fixed (I hope) and committed at revision 930. Added ValueChangeListener and modified ShowCartBean.update method.





[JAVAEETUTORIAL-95] Change layout table panelGrids to HTML tables for accessibility Created: 06/Jun/12  Updated: 15/Jun/12  Resolved: 15/Jun/12

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.7-3
Fix Version/s: 6.0.7-4

Type: Task Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The accessibility tool we use (the OGHAG toolbar) has become pickier about layout tables. Formerly, a table with an empty summary was treated as a layout table and passed the accessibility requirements. Now, the tool requires a table 2x2 or larger to have the role="presentation" attribute set. The h:panelGrid tag does not currently have an attribute that generates this output, nor does it pass the attribute through – it drops it.

This means that layout tables need to be plain HTML tables, because you can set role="presentation" on a plain HTML table.

I am making the fix for the mailconnector example, which is where I first discovered the problem. I will see if others have the same problem.



 Comments   
Comment by Kim Haase [ 07/Jun/12 ]

Fixed mailconnector example at revision 929.
Fixed dukes-bookstore at revision 930.

Comment by Kim Haase [ 07/Jun/12 ]

The panelGrid on the bookcashier.xhtml page of dukes-bookstore passes accessibility; the accessibility tool thinks it is a data table even though it is a layout table.

Comment by Kim Haase [ 08/Jun/12 ]

For dukes-tutoring, the problem was dataTable tags (actual data tables) that lacked the required summary attribute. I made the summary identical to the table title, even though this is discouraged by the accessibility group, rather than create new strings for them.

Several pages required summaries for dataTable or panelGrid tags.

Comment by Kim Haase [ 15/Jun/12 ]

I believe that this task has been completed for all the current examples and can now be closed.





[JAVAEETUTORIAL-94] Problems with Duke's Tutoring admin interface Created: 05/Jun/12  Updated: 16/Aug/12  Resolved: 16/Aug/12

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.7-3
Fix Version/s: 6.0.7-6

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 0 minutes
Time Spent: Not Specified
Original Estimate: 0 minutes


 Description   

Problem 1:

When I try to add a student (createStudent.xhtml) and I enter the phone number

111-222-3333

I get an error message:

Phone numbers should be of the form (xxx) xxx-xxxx or xxx-xxx-xxxx.

It appears that in Person.java the only allowed format is (xxx) xxx-xxxx. Either Person.java or the error message needs to be fixed.

Problem 2:

When I try to create a new guardian, it doesn't "take" – I click Submit, but the new person is not added to the selection list, or to the database. What is supposed to happen here? Creating a new student works all right (except for the phone glitch).

Interestingly, I don't get the phone validation error on the createGuardian page, only on the createStudent page. It's as if it doesn't even get as far as validating it against the Person entity.



 Comments   
Comment by Kim Haase [ 11/Jun/12 ]

Problem 3:

On the Create Student form, there is a field for "Country". However, if I try to create a student whose address is in a foreign country, I find that the fields "State" and "Zip" may not be null.

Why even have a Country field if only addresses in the US are permitted?

Comment by Kim Haase [ 11/Jun/12 ]

Problem 4:

On the main administration page, if I click the Remove button for a student, I get an error 500 with a stack trace that begins as follows:

WARNING: StandardWrapperValve[Faces Servlet]: PWC1406: Servlet.service() for servlet Faces Servlet threw exception
javax.faces.view.facelets.FaceletException: Error Parsing /admin/student/deleteStudent.xhtml: Error Traced[line: 39] XML document structures must start and end within the same entity.
at com.sun.faces.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:425)
at com.sun.faces.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:399)
at com.sun.faces.facelets.compiler.Compiler.compile(Compiler.java:124)

This one is easy: the deleteStudent.xhtml page doesn't have a closing </ui:composition> tag. I'll check in a fix for this.

Comment by Kim Haase [ 11/Jun/12 ]

Problem 5:

If I create a new student and then click Add Guardian for that student on the main administration page, I arrive on the createGuardian page. If I select an existing guardian in the list box (the addExistingGuardian component) and click the "Add guardian" button, I get a validation error: Value is not valid.

This will take a while to figure out.

Comment by Kim Haase [ 11/Jun/12 ]

Another note on Problem 1: You can submit the Create Guardian form (to create a guardian for a student) without filling in any of the fields. (The guardian is not stored in the database anyway, no matter what fields you fill in.)

Supposedly, when you click Submit on the form, the following method call happens:

<h:commandButton id="submit"
action="#

{adminBean.createGuardian(guardianManager.newGuardian, adminManager.currentStudent)}

"
value="#

{bundle['action.submit']}

" />

The createGuardian method is never called (the log message for it is never displayed).

I put logging code for the GuardianManager constructor and for the newGuardian and currentStudent setters and getters. The constructor and getCurrentStudent seem to be called by Submit, but the newGuardian setter/getter are not; getNewGuardian is called for the display of each form field, but not on Submit.

Comment by jendrock [ 13/Jun/12 ]

For Ian when he returns.

Comment by Ian Evans [ 15/Aug/12 ]

Guardian creation works now.

Figuring out the phone number issue is complicated, due to the interaction between validators and converters. The easiest thing to do is to just update the validation message to only allow (xxx) xxx-xxxx phone numbers.

Comment by Ian Evans [ 15/Aug/12 ]

Revision: 986
Author: ievans
Date: 2012-08-15 10:59
Message: Modified validation messages to remove xxx-xxx-xxxx phone numbers as valid patterns. Still need to update the Chinese localized string.
Issue #JAVAEETUTORIAL-94 - Problems with Duke's Tutoring admin interface

Comment by Ian Evans [ 15/Aug/12 ]

Reassigning to Eric for checking in the Chinese locale validation messages.

Comment by jendrock [ 16/Aug/12 ]

Checked in the updated Simplified Chinese validation messages properties file (Revision 991) 2012-08-16 18:58:42 UTC.

Comment by jendrock [ 16/Aug/12 ]

All the fixes for this issue are now checked in. The fixed case study will be included in the 6.0.7-6 release.





[JAVAEETUTORIAL-88] Rework JSF lifecycle information Created: 17/May/12  Updated: 07/Feb/13  Resolved: 07/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 7.0.0

Type: Task Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Sub-Tasks:
Key
Summary
Type
Status
Assignee
JAVAEETUTORIAL-113 section depends on knowledge not yet ... Sub-task Closed Kim Haase  

 Description   

Information about the JSF lifecycle is fundamental enough that it should be moved back to the beginning of the JSF section of the tutorial and discussed more in the course of the early chapters.



 Comments   
Comment by Kim Haase [ 07/Feb/13 ]

Moved material from jsf-advanced chapter to jsf-intro and jsf-ajax chapters and removed jsf-advanced from book. Redid cross-references.





[JAVAEETUTORIAL-89] Reintroduce concept of backing beans to JSF chapters Created: 17/May/12  Updated: 24/Apr/13  Resolved: 24/Apr/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 7.0.1

Type: Task Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The term "backing bean" has been banished from the tutorial in favor of "managed bean." However, a backing bean is a specific type of managed bean. The term should be defined and used where appropriate.



 Comments   
Comment by Kim Haase [ 24/Apr/13 ]

Completed for 7.0.1.





[JAVAEETUTORIAL-92] Integrate CDI content from WebLogic Server 12c Developer's Guide into advanced CDI chapter in tutorial Created: 30/May/12  Updated: 05/Feb/13  Resolved: 05/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-3
Fix Version/s: 6.0.8

Type: Improvement Priority: Major
Reporter: jendrock Assignee: chinmayee_srivathsa
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: 2 weeks
Time Spent: Not Specified
Original Estimate: 2 weeks


 Description   

Add applicable content from Chapter 9, "Using Contexts and Dependency Injection for the Java EE Platform" in the Oracle® Fusion Middleware Developing Applications for Oracle WebLogic Server 12c Release 1 book to the "Contexts and Dependency Injection for the Java EE Platform: Advanced Topics" chapter in the tutorial. Some content, including information about contextual scopes, may need to be migrated to the basic CDI chapter. The plan discussed in the tutorial meeting sounded comprehensive and correct. Please outline it here in a comment, then implement it in the advanced topics chapter.



 Comments   
Comment by Kim Haase [ 31/May/12 ]

I have made the fixes involving dispose methods as part of the v2 index fixes – I added index entries for dispose on the appropriate paragraph, changed the section title, and made "dispose method" a term. The additional content from the WLS book remains to be added.

Comment by Kim Haase [ 11/Jul/12 ]

I believe that all the fixes from http://aseng-wiki.us.oracle.com/asengwiki/display/JavaDocumentation/CDI+Chapter+for+Java+EE+6+tutorial have now been made, so I think you can close this as fixed, Chinmayee. Thanks!

Comment by jendrock [ 05/Feb/13 ]

The issue has been fixed and is available online and in the javaeetutorial 6.0.8 package in the Update Center.





[JAVAEETUTORIAL-136] Duke's Forest validation messages not found Created: 20/Sep/12  Updated: 09/Nov/12  Resolved: 09/Nov/12

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-6

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: William Markito
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Today I tried to create a new customer/user for Duke's Forest, for the first time in quite a while, and typed a password that was too short. Instead of an error message in the little square I got

{person.password}

I tried using incorrect values for some of the other fields and got the same problem – all that was displayed was

{person.email}

or

{person.firstname}

Apparently the validation messages, which are in dukes-resources.jar, are not being found even though dukes-resources.jar is bundled in dukes-store.war.

In the dukes-resources.jar file the messages are in java/ValidationMessages.properties and java/ValidationMessages_es.properties.

In dukes-tutoring, the messages are in dukes-tutoring-war/src/java and are built into the WAR file, in WEB-INF/classes/ValidationMessages.properties etc.

So Eric and I copied the validation messages into dukes-store/src/java, and after redeployment the messages appear just fine.

Are the validation messages needed anywhere besides dukes-store? I don't believe any entities are created in dukes-shipment, so removing them from dukes-resources and putting them into just dukes-store might be sufficient.

I am about to check in some fixes for serialVersionUID (JAVAEETUTORIAL-107) and other cosmetic changes (changing StringBuffer to StringBuilder, adding @Override, line breaks, other NetBeans nits) and was checking to see if I had broken anything. But the same thing happens with the existing version on my other machine, so those fixes I am making haven't changed any behavior.



 Comments   
Comment by William Markito [ 11/Oct/12 ]

That's right Kim, I've run a couple of tests here and that's the same behavior I'm experiencing.

Also, this issue happened with other bundle messages (Bundle_en.properties...) and that's the reason the file is copied into dukes-store and dukes-shipment, so they can share the same labels for form fields. For some reason, I thought that using the resources project to share the Validation messages were working despite my experience with Bundle.properties.

So we can remove them from the dukes resources project.

Thanks for catching that.

Comment by Kim Haase [ 09/Nov/12 ]

Committed changes at revision 1040.





[JAVAEETUTORIAL-133] Tag terminology needs definitions and other fixes Created: 20/Aug/12  Updated: 06/Nov/12  Resolved: 06/Nov/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-6

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The section "Immediate Evaluation" in the Expression Language chapter (http://docs.oracle.com/javaee/6/tutorial/doc/bnahr.html#bnahs) mentions a tag handler, a concept not previously introduced.

The problem goes back as far as the section on the hello1 example in "Getting Started with Web Applications" chapter (http://docs.oracle.com/javaee/6/tutorial/doc/bnadx.html), which has a bullet that mentions the tags directory, tag files, and tag libraries without explaining what they are. In fact, the tags directory is no longer mentioned in the Java EE 6 platform spec and is associated with JavaServer Pages (JSP) technology; it is not in the illustration "Web Module Structure".

So this bullet item should be removed, and the terms "tag", "tag handler", and "tag library" need to be defined at appropriate points in the documentation.



 Comments   
Comment by Kim Haase [ 20/Aug/12 ]

Changes needed to Chapter 3:

Remove bullet item on "tags" directory in web applications, and remove mention of it from figure's alt description

Declaring Resource References section (http://docs.oracle.com/javaee/6/tutorial/doc/bnaeo.html#bnaeu): add CDI managed beans to last sentence of paragraph 2 (they accept resource injections), add a cross-reference to the "Resources and Resource Adapters" chapter (these aren't really related to this issue but should be done)

Remove taglib listeners and taglib tag handlers from table "Web Components That Accept Resource Injections" (they're still in the EE 5 tutorial, which covers JSP)

Changes needed to Chapter 4:

Introduce concept of tag handlers underlying component tags by adding a sentence near the beginning: "The tag libraries contain tag handlers that implement the component tags."

Comment by Kim Haase [ 16/Oct/12 ]

These fixes were checked in to SCCS on 9/21 but have not yet been put back to the tutorial workspace.

Comment by Kim Haase [ 06/Nov/12 ]

Changes have been put back to tutorial workspace.





[JAVAEETUTORIAL-126] javascript incorrectly described as object-oriented Created: 12/Jul/12  Updated: 16/Aug/12  Resolved: 25/Jul/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: 6.0.7-5

Type: Bug Priority: Major
Reporter: Brant Gurganus Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This issue occurs on "Overview of Ajax" page at http://docs.oracle.com/javaee/6/tutorial/doc/gkigr.html. The second paragraph describes JavaScript as object oriented. JavaScript does have objects, but it is prototype oriented. It does not have object oriented features like inheritance. Objects inherit from objects set as their prototype. There are no classes.



 Comments   
Comment by Kim Haase [ 24/Jul/12 ]

Thank you again for catching this error in terminology.

Comment by Kim Haase [ 25/Jul/12 ]

Checked in fix that removes the claim that Ajax is object-oriented.





[JAVAEETUTORIAL-71] Complete I18N tasks in Duke's Forest Created: 21/Mar/12  Updated: 05/Feb/13  Resolved: 05/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.7-2
Fix Version/s: 6.0.8

Type: Improvement Priority: Major
Reporter: jendrock Assignee: William Markito
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Move all error messages and any other hard-coded strings to the appropriate message bundles (I18N cleanup) in the case study.



 Comments   
Comment by jendrock [ 05/Feb/13 ]

This issue has been resolved. The dukes-store and dukes-shipment projects have English and Spanish-language message bundles. That is all we are going to do.





[JAVAEETUTORIAL-68] Need more information on scopes and concurrent access Created: 14/Mar/12  Updated: 16/Aug/12  Resolved: 05/Jun/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.4
Fix Version/s: 6.0.7-4

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

A user writes,

In Chapter 14 Configuring JavaServer Faces Applications; in the section Using Managed Bean Scopes, it states:

If your managed bean takes part in a single HTTP request, you should define the bean with a request scope. If you placed the bean in session or application scope instead, the bean would need to take precautions to ensure thread safety because component instances depend on running inside of a single thread.

I think that even a request scoped bean could need to be coded to handle concurrent access, say if it had a static variable. So I don't know that bean scope has any real bearing on the need to handle multi-threaded access. Certainly, the "larger" the scope, the more possibility there is for concurrent access, but I don't believe concurrent access is limited to beans of a particular scope or scopes. It seems to me that managed beans are not any different than any other code in this respect: you just have to be aware of your code and the type of threading it is subject to. If it has data that could be subject to multi-threaded access, you need to code for that (regardless of the beans scope).

But I'm no expert on concurrency...



 Comments   
Comment by Kim Haase [ 04/Jun/12 ]

This was a change made at EE 6 that made the text incorrect. The need to use request scope applies only if the bean is referenced by one or more component binding expressions, because UIComponent instances depend on running in a single thread. If you bind to properties rather than component instances, you can use other scopes with no problems even if the bean only takes part in a single HTTP request.

Comment by Kim Haase [ 05/Jun/12 ]

Checked in fix for JSF configuration chapter.





[JAVAEETUTORIAL-66] "Configuring JavaServer Faces Applications" missing support for @ViewScoped annotation Created: 12/Mar/12  Updated: 05/Jun/12  Resolved: 05/Jun/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-2
Fix Version/s: 6.0.7-4

Type: Bug Priority: Major
Reporter: Ian Evans Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In Chapter 14 Configuring JavaServer Faces Applications; in the Using Annotations to Configure Managed Beans section, it states:

"You can also define the scope of the managed bean within the class file, as shown in the above example. You can annotate beans with request, session, or application scope, but not view scope."

Maybe that was true at some time in the past, but currently you can annotate a bean with view scope (@ViewScoped)



 Comments   
Comment by Kim Haase [ 04/Jun/12 ]

Thanks for catching this, Ian. Fix made, not yet checked in.

Comment by Kim Haase [ 05/Jun/12 ]

Checked in fix in JSF configuration chapter.





[JAVAEETUTORIAL-85] mailconnector example: Text that instructs the user to configure a local email server may be confusing Created: 23/Apr/12  Updated: 06/Jun/12  Resolved: 06/Jun/12

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 6.0.7-3
Fix Version/s: 6.0.7-4

Type: Improvement Priority: Major
Reporter: rcervera Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: mailconnector

 Description   

The page index.html that the user accesses to send an email, contains a form for the email and the following text:

"The default configuration assumes that there is an SMTP server running on localhost. If this is not the case, edit your mail.properties file and change the value for the mailhost parameter to the name of a host that provides SMTP service for your network, and change the value for the mailuser parameter to the valid mail user id, redeploy the application, and restart GlassFish."

As Eric noted, GlassFish already has an email server, so the user does not need to do any of that to run this example. The text above is confusing because it may have the user try to install a local SMTP server or go play with the mail.properties file when this is unnecesary.



 Comments   
Comment by Kim Haase [ 06/Jun/12 ]

Thanks for catching this, Ricardo.

Committed fix at revision 929. Also fixing language in chapter.





[JAVAEETUTORIAL-83] Java Servlet Advanced Topics section is empty Created: 20/Apr/12  Updated: 11/Feb/13  Resolved: 11/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-3
Fix Version/s: 6.0.8

Type: Bug Priority: Major
Reporter: rcervera Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: empty, servlet

 Description   

http://docs.oracle.com/javaee/6/tutorial/doc/glrbb.html is empty.



 Comments   
Comment by jendrock [ 25/Apr/12 ]

This chapter was not supposed to be included in the build. I need to include three viable topics, at least some of which can also include (or reference) an example, before I am willing to add this chapter into the tutorial. I could discuss such topics as asynchronous processing, absolute ordering of fragments in the web.xml file (not geared for our audience), dynamic registration of servlets, etc. I may add this in for the next respin, especially that we have a few rudimentary examples that we can use to show some of the aforementioned features.

Comment by jendrock [ 30/May/12 ]

Will create a chapter that addresses two features that may be of interest to our target audience: (1) file upload and (2) dynamic registration. Have a very simple example for (2) that demonstrates dynamic registration of a servlet that sets an initialization parameter. Will point back to Duke's Forest for file upload. The case study uses this feature when a user creates a new product and adds an image to the product description.

Comment by jendrock [ 11/Feb/13 ]

The chapter was completed and included in the documentation that went out with the 6.0.8 release.

For Java EE 7, the content has been folded back into the base Servlet chapter.





[JAVAEETUTORIAL-82] Update docs, examples to reflect JSF form-based login improvements Created: 20/Apr/12  Updated: 05/Jun/12  Resolved: 05/Jun/12

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.7
Fix Version/s: 6.0.7-4

Type: Bug Priority: Major
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This affects both the docs and the examples. Since GF 3.1.1 (I believe), the situation with JSF form-based login has improved: you can now use JSF inputText, inputSecret, and commandButton tags instead of plain HTML input tags within the login form.

You still have to use an HTML form instead of a JSF h:form tag.

The examples that use j_security check are security/hello1_formauth, the mailconnector example, and dukes-tutoring. I can fix the first two – Ian, would you like to do dukes-tutoring-war/web/resources/components/formLogin.xhtml or should I?

The only doc that needs correcting is the security-webtier chapter, which reproduces the login.xhtml file (see http://docs.oracle.com/javaee/6/tutorial/doc/bncbx.html#bncca).



 Comments   
Comment by Kim Haase [ 20/Apr/12 ]

Committed login.xhtml fixes for hello1_formauth and mailconnector at SVN revision 913.

Comment by Kim Haase [ 23/Apr/12 ]

Put back fix to security-webtier.sgm.

Comment by Kim Haase [ 27/Apr/12 ]

Sorry, I should not have resolved this issue yet – there is still a change to be made in case-studies/dukes-tutoring/dukes-tutoring-war/web/resources/components/formLogin.xhtml.

Comment by Kim Haase [ 05/Jun/12 ]

It turns out that dukes-tutoring-war/web/resources/components/formLogin.xhtml needs to remain with a mix of HTML and JSF tags, because using all JSF input tags causes authentication to fail if you use a realm other than the file realm and do not use login/logout methods.

Duke's Forest uses a JDBC realm, but it also calls login/logout methods.





[JAVAEETUTORIAL-77] Add illustrations to Chapter 46, Running the Resource Adapter Example Created: 21/Mar/12  Updated: 16/Aug/12  Due: 06/Apr/12  Resolved: 16/Aug/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-2
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: jendrock Assignee: jendrock
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Add some illustrations to Chapter 46, Running the Resource Adapter Example. There are four illustrations from which to choose in the whitepaper "Creating Resource Adapters with J2EE Connector Architecture 1.5". An adaptation of Figures 1, 3, and/or 4 would be worthwhile additions to the chapter. The flow of the application is complex, so an illustration would go a long way in clarifying application flow and component interactions.



 Comments   
Comment by jendrock [ 23/Mar/12 ]

I submitted a graphics request for all four illustrations on 3/22/2012. To check on the progress, go to http://fusiongraphics.us.oracle.com/projects/ and look for the submission under DOC Id: JEETT that requests 4 illustrations. I requested a first draft by 3/29 and a final set of graphics by 4/5.

Comment by Ian Evans [ 16/Aug/12 ]

Are these graphics done, Eric? If so, can we include them in the next update?

Comment by jendrock [ 16/Aug/12 ]

After examining the mailconnector example, there is no way to implement the MDB in a similar way in the example since we updated the example to use JSF (and managed beans). Therefore, it makes no sense to add new illustrations as they are not needed.

We will not fix this issue.





[JAVAEETUTORIAL-76] Fix three illustrations in the Chapter 53, Duke's Forest Case Study Example Created: 21/Mar/12  Updated: 30/May/12  Due: 06/Apr/12  Resolved: 30/May/12

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-2
Fix Version/s: 6.0.7-3

Type: Improvement Priority: Major
Reporter: jendrock Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Three illustrations need improvement:

1. Shrink Figures 53-2 and 53-3 so they fit on the pages of the PDF document correctly. (They look correct in the HTML pages already.)
2. Correct Figure 53-3 to accurately reflect the database tables by adding DESCRIPTION VARCHAR (200) to ORDER_STATUS and changing AMOUNT FLOAT to AMOUNT FLOAT(52) in CUSTOMER_ORDER.



 Comments   
Comment by jendrock [ 22/Mar/12 ]

Submitted a graphics request to http://fusiongraphics.oracle.com to have the two illustrations scaled down 15% in size and have the two corrections to the database schema done.

Comment by jendrock [ 23/Mar/12 ]

I submitted a graphics request for all four illustrations on 3/21/2012. To check on the progress, go to http://fusiongraphics.us.oracle.com/projects/ and look for the submission under DOC Id: JEETT that requests 2 illustrations. I requested a first draft by 3/28 and a final set of graphics by 4/4.

Comment by jendrock [ 30/May/12 ]

The 3 illustrations were corrected and have been included in the current version of the tutorial in the Update Center.





[JAVAEETUTORIAL-140] Restore page with Java EE XML Schemas Created: 15/Oct/12  Updated: 04/Jan/13  Resolved: 04/Jan/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Arend v. Reinersdorff Assignee: jendrock
Resolution: Invalid Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The page with links to all Java EE XML Schemas has disappeared. See an archived version here:
http://web.archive.org/web/20110614024726/http://java.sun.com/xml/ns/javaee/

I could not find the page searching oracle.com via search on oracle.com or via google search.

The links to the .xsd files are still available and redirect oracle.com, for example:
http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd
redirects to
http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/web-facelettaglibrary_2_0.xsd

Please bring it back, it was very handy to quickly look up something in a schema.



 Comments   
Comment by AlanSommerer [ 03/Jan/13 ]

There is this page: http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/index.html

Comment by Arend v. Reinersdorff [ 04/Jan/13 ]

Many thanks. That's the one

Comment by jendrock [ 04/Jan/13 ]

Technically, this is not a tutorial issue but rather an Oracle web site issue. Since we agree that this information is important and should be readily available, we will add a link to it from the bottom of our index page at http://docs.oracle.com/javaee, probably under either the leftmost (JAVA PRODUCT PAGES) or rightmost (WHITE PAPERS, ARTICLES, etc.) columns.

Ideally, the link should be made from one of the Oracle Technical Network pages, perhaps from this page: http://www.oracle.com/technetwork/java/javaee/resources-jsp-139799.html. But I do not see a way to file a request to add that link.





[JAVAEETUTORIAL-56] JSF Tutorial Resources page incorrectly indicates the location of the 'resources' folder in 'META-INF' Created: 13/Oct/11  Updated: 16/Aug/12  Resolved: 13/Oct/11

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7-5
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: boyko11 Assignee: Kim Haase
Resolution: Invalid Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The resources folder should reside in the webapp(if maven project) or the WebContent folder(if regular Dynamic Web Project), not the META-INF folder as the page at
http://download.oracle.com/javaee/6/tutorial/doc/girgm.html
indicates.



 Comments   
Comment by boyko11 [ 13/Oct/11 ]

Jumped the gun to quickly on this one. The docs do actually mention that the first option is the web application root. My apologies, please close this issue.

Comment by Kim Haase [ 13/Oct/11 ]

Thanks, closing.

We're aware of some other shortcomings in our documentation of resources (http://java.net/jira/browse/JAVAEETUTORIAL-49, http://java.net/jira/browse/JAVAEETUTORIAL-53) and are working on fixing them. If you notice more, please let us know.





[JAVAEETUTORIAL-46] Add database schema graphic to JPA example apps Created: 19/Aug/11  Updated: 05/Feb/13  Resolved: 05/Feb/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.7
Fix Version/s: 6.0.7-6

Type: Task Priority: Minor
Reporter: Ian Evans Assignee: Ian Evans
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We used to have graphics that showed the database schema of the JPA examples.

I'll send some sketches to Jordan so the graphics team can clean them up.



 Comments   
Comment by jendrock [ 05/Feb/13 ]

Jordan created two illustrations, one for roster and the other for order. Both figures have been included in the 6.0.7 IPS package and are available online. See the fix for order here: http://docs.oracle.com/javaee/6/tutorial/doc/giqst.html and the fix for roster here: http://docs.oracle.com/javaee/6/tutorial/doc/giqsq.html.





[JAVAEETUTORIAL-45] Move resource creation/deletion Ant tasks from bp-project/app-server-ant.xml to a separate bp-project/resources-ant.xml file Created: 18/Aug/11  Updated: 20/Aug/12  Due: 15/May/12  Resolved: 20/Aug/12

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Minor
Reporter: jendrock Assignee: Ian Evans
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Dependency
depends on JAVAEETUTORIAL-65 Consider create examples also using M... Resolved

 Description   

For Java EE 7, we need to move all Ant tasks that relate to resource creation/deletion (that is all JavaMail, JMS, JDBC, Connector, etc. resource creation and deletion tasks) from bp-project/app-server-ant.xml into a new standalone bp-project/resources-ant.xml file.

After that has been done, all build.xml files in all examples that call any of these tasks will need to be updated by adding a a new property, uses.resources, to trigger using the new file.



 Comments   
Comment by Ian Evans [ 17/Apr/12 ]

Bumping down priority, as this task may not be necessary if we move to Maven for EE 7.

Comment by Ian Evans [ 20/Aug/12 ]

Resource creation won't be handled in Ant, as we are migrating to Maven-based projects.

Comment by Ian Evans [ 20/Aug/12 ]

We are moving our projects to Maven, so we do not need an Ant-based set of targets for resource creation/deletion.

Additionally, Java EE 7 may include standardized resource creation via deployment descriptors.





[JAVAEETUTORIAL-243] CDI Part needs to be moved forward in the book Created: 05/Sep/13  Updated: 06/Sep/13  Due: 13/Sep/13  Resolved: 06/Sep/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.2
Fix Version/s: 7.0.3

Type: Bug Priority: Minor
Reporter: jendrock Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Need to reorganize the structure in the beginning of the tutorial. The CDI part needs to be moved to between Part III, Web Tier, and Part IV, Web Services.



 Comments   
Comment by Kim Haase [ 06/Sep/13 ]

Moved CDI part/chapters and updated book. This means all files changed, so if you were working on anything please move it to a safe place before doing an svn update.

Also took advantage of the opportunity to fix some capitalization inconsistencies in figure and table titles (and column titles in tables).

Comment by Kim Haase [ 06/Sep/13 ]

Reopen for edit





[JAVAEETUTORIAL-242] Section of Ajax chapter belongs elsewhere Created: 05/Sep/13  Updated: 05/Sep/13  Resolved: 05/Sep/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.2
Fix Version/s: 7.0.4

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The section "Partial Processing and Partial Rendering" in the Ajax chapter really belongs in the chapter that contains the lifecycle information. I am moving it to a level 1 section after "The Lifecycle of a JavaServer Faces Application." I fixed the chapter jumplists too. I cannot find any broken xrefs that I haven't fixed, but that doesn't mean there aren't any.



 Comments   
Comment by Kim Haase [ 05/Sep/13 ]

Committed fix.





[JAVAEETUTORIAL-256] Update Tag Libraries Supported by Facelets section Created: 15/Dec/13  Updated: 16/Dec/13  Resolved: 16/Dec/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.2
Fix Version/s: 7.0.3

Type: Bug Priority: Minor
Reporter: sudheer_jonna Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Tag Libraries Supported by Facelets section(Under what is facelets?) need to be corrected considering the below points

1. Passthrough by elements and passthrough by attributes tablibrary namespaces respective Prefix and Example column values need to be interchanged each other.

2. Composite tab library need to be added

http://xmlns.jcp.org/jsf/composite

Regards,
Sudheer



 Comments   
Comment by Kim Haase [ 16/Dec/13 ]

Thank you very much for pointing out these errors. We will correct them in the next version of the Tutorial.

Comment by Kim Haase [ 16/Dec/13 ]

Fixed in Facelets chapter source.





[JAVAEETUTORIAL-249] Duke's Tutoring Administration Panel: editing student record has problems Created: 20/Sep/13  Updated: 25/Mar/14  Resolved: 25/Mar/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.3
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: jendrock Assignee: Ian Evans
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Zip Archive validationTest-0.1.zip     Zip Archive validationTest-ee6.zip    

 Description   

In the Administration Panel of the Duke's Tutoring case study example, strange things happen when you try to edit a student. Let's give Buster Bluth a shot.

Click Edit in Buster Bluth's row.
Move "Buster" from Nickname to Middle Name and click Submit.
You'll see three error messages that indicate you need to fill out the Email, Cell Phone, and Home Phone fields because they are required, but aren't filled in in the existing student record.
Click Submit again.
Click Administration main page and notice that "Buster Bluth" is now known as "Bluth". He has no first name, even though I left the First Name field alone; I just modified the Nickname and Middle Name fields.



 Comments   
Comment by rcervera [ 20/Sep/13 ]

It works when filling all the fields in the page; the record gets updated. Probably the fields below (phone, etc) are not validating properly because they are empty.

Comment by Kim Haase [ 20/Sep/13 ]

I think what Eric found was that even after he filled in those fields and clicked Submit, the data was not recorded correctly.

Comment by jendrock [ 21/Sep/13 ]

Yes, what Kim says is correct. There are 2 issues, the first being that the existing data about the students does not conform to the validation checks for the Email, Cell Phone, or Home Phone fields. There should be some indication that these fields are required. That said, the existing data should conform to those requirements as well. It does not.

The issue that pushed my buttons was the randomness of what happens when Name (First, Middle, Last) and Nicknames are filled out. I can look at the Name data for an existing student in the list, create a new student and fill out the same fields as are shown for the existing student and get an end result that is quite different than what is expected. Try to create a new student in the manner that I previously described and compare the results to George Bluth.

This is just one of the Admin issues. I will write up and add the others sequentially. For example, we can create a new guardian for a student but how can we display the guardians for that, or any, student?

All good case studies, like this one, exercise many different technologies and components, which lead to many interactions and combinations of interactions that need to be discovered, tested, and examined. It takes several different people looking at the same app to truly shake out the things that don't work. In the grand scheme of things, the things I found are relatively small and, while bothersome, do not render the app unusable by any stretch of the imagination. After the latest round of updates, I simply look at these blemishes as growing pains. I really like what the app shows under its skin. I know the user community does too.

Comment by Ian Evans [ 23/Sep/13 ]

The weird thing is that those fields are not required, despite the validation messages that show a violation.

@Email
protected String email;
@Pattern(regexp="\\(\\d{3}\\) \\d{3}-\\d{4}",
         message="{invalid.phonenumber}")
protected String homePhone;
@Pattern(regexp="\\(\\d{3}\\) \\d{3}-\\d{4}",
         message="{invalid.phonenumber}")
protected String mobilePhone;

Note that there is no @NotNull validation constraint on these fields. The empty fields in the Facelets form are apparently being set to something behind the scenes, causing the constraint violations. Which is bewildering.

Comment by Ian Evans [ 02/Oct/13 ]

JSF is interpreting the strings from the form as empty strings rather than null strings. This occurs even if you add the following to web.xml

<context-param>
  <param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name>
  <param-value>true</param-value>
</context-param>

Adding the above parameter appears to trigger different behavior, though, as you won't see the Bean Validation error message put on the constraint, but rather "A Persistence Error Occurred". This is caused by a ContraintViolationException thrown downstream by Bean Validation during the transaction.

Comment by Ian Evans [ 02/Oct/13 ]

The ZIP file contains a test case that shows the errors. A simple JPA entity with a non-required field has a @Pattern constraint. Any attempt to leave the input box blank in the JSF form results in a ConstraintViolationException.

Comment by Kim Haase [ 07/Oct/13 ]

The zip file validationTest-ee6.zip modifies the previous example to run on a Java EE 6 platform (glassfish3). The reported problem does not occur on EE 6, suggesting that it was introduced in EL 3.0.

Comment by Kim Haase [ 22/Oct/13 ]

In the actual Duke's Tutoring example (not the stripped-down version):

If I don't provide the INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL context parameter and I try to create a student with no email address or phone numbers, then when I click Submit I get an error message on the email field saying

must match "[a-z0-9!#$%&'*+/=?^_`

{|}~-](?:\.[a-z0-9!#$%&'*/=?^_`{|}

~-])@(?:[a-z0-9](?:[a-z0-9-][a-z0-9])?\.)[a-z0-9](?:[a-z0-9-]*[a-z0-9])?"

and error messages on both phone fields saying

Phone numbers should be of the form (xxx) xxx-xxxx.

In Person.java, none of these fields has the @NotNull annotation, only the @Pattern annotation.

If I do provide the INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL context parameter and I try to create a student with no email address or phone numbers, I immediately go to an Error 500 page that reports a ConstraintViolationException:

type Exception report

messageInternal Server Error

descriptionThe server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: javax.ejb.EJBException
root cause

javax.faces.el.EvaluationException: javax.ejb.EJBException
root cause

javax.ejb.EJBException
root cause

javax.validation.ConstraintViolationException: Bean Validation constraint(s) violated while executing Automatic Bean Validation on callback event:'prePersist'. Please refer to embedded ConstraintViolations for details.
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 4.0 logs.

Comment by Kim Haase [ 23/Oct/13 ]

Here's another interesting wrinkle (this is the version with the latest fixes):

I did not have the context parameter javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL set.

I created a student with a first name, last name, and nickname, clicked Submit, and got red validation errors because I left out the email and phone numbers. (This is an issue because those fields are not required; they just have pattern specifiers.)

Then I entered correct data in those fields and REMOVED THE FIRST NAME and then clicked Submit again. I did not get an error on the missing first name, though that is a required field. Instead, the student was created with the nickname as the first name.

The interaction between validation and persistence seems to be problematic here.

Comment by jendrock [ 25/Mar/14 ]

Since this isn't intended to be a real, fully operational application, these fixes will be left as an exercise for the reader to complete. Enjoy the example for what it is.





[JAVAEETUTORIAL-254] Wrong version of beans.xml file in example Created: 22/Oct/13  Updated: 22/Oct/13  Resolved: 22/Oct/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.2
Fix Version/s: 7.0.3

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

For the encoder example in Section 26.1 of "Running the Advanced Contexts and Dependency Injection Examples," the instructions tell the user to run the example, then edit the beans.xml file and rerun the example. The version checked into the workspace is actually the edited version (I forgot to return it to the original state after testing), so the current instructions will confuse users.



 Comments   
Comment by Kim Haase [ 22/Oct/13 ]

Committed fixed version at revision 1675.

Am also correcting some instructions in the advanced CDI examples chapter to make them consistent with the ones in the simple CDI examples chapter.





[JAVAEETUTORIAL-237] Fix leftover Solbook conversion errors regarding line breaks Created: 21/Aug/13  Updated: 21/Aug/13  Resolved: 21/Aug/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.3

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In four Frame files, the Solbook conversion process replaced line break directives with the word "linebreak" or "preflinebreak" (the name of the directive in Solbook). (There may originally have been more, but we must have caught them before.)

The files are jsf-facelets.fm, jaxrs.fm, persistence-basicexamples.fm, and security-javaee.fm. I just happened to notice one in the Facelets chapter and found the rest by searching for "linebreak" in the tutorial PDF.

I'm checking in fixed versions.



 Comments   
Comment by Kim Haase [ 21/Aug/13 ]

Checked in four Frame files.





[JAVAEETUTORIAL-235] Title "Java EE 6 Tutorial" is baked into PDF Created: 14/Aug/13  Updated: 14/Aug/13  Resolved: 14/Aug/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.2
Fix Version/s: 7.0.3

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

An alert reader has pointed out that the title of the Java EE Tutorial that appears in File->Properties in Adobe Reader, or in a browser title tab in some browsers (notably on the Mac), is "The Java EE 6 Tutorial".

This turns out to be something we have to fix in the FrameMaker .book file. The keywords there are also a bit sparse and could use improvement.



 Comments   
Comment by Kim Haase [ 14/Aug/13 ]

Checked in fix to book file. The fix will appear in the next update.





[JAVAEETUTORIAL-234] h:selectManyRadio doesn't seem right Created: 11/Aug/13  Updated: 13/Aug/13  Resolved: 13/Aug/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.2
Fix Version/s: 7.0.3

Type: Bug Priority: Minor
Reporter: AnnTea Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In section 12.2.1.4 the element h:selectManyRadio is mentioned as an example. I do not think this element exists but it would be better to replace it with h:selectManyCheckbox.



 Comments   
Comment by AnnTea [ 11/Aug/13 ]

Sorry, this should not have priority Major. I don't see how (or if) I can change that.

Comment by Kim Haase [ 13/Aug/13 ]

Whew, thanks very much for catching that! That's embarrassing, since selectManyRadio is a contradiction in terms.

I'll change the priority to minor (I think Major is the default) and fix it for the next rev of the Tutorial.

Comment by Kim Haase [ 13/Aug/13 ]

Fixed in documentation source.

Comment by AnnTea [ 13/Aug/13 ]

You are very welcome. I find the tutorial to be a great asset.





[JAVAEETUTORIAL-217] Use clearly user-specific names for destinations Created: 12/Jul/13  Updated: 19/Jul/13  Resolved: 19/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Improvement Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The JMS spec lead suggests that calling the example destinations "Queue" and "Topic" is "a bit confusing as the reader doesn't know whether this choice of name is significant. I prefer a name like "MyQueue".

I will make this change.



 Comments   
Comment by Kim Haase [ 19/Jul/13 ]

Fixed in documentation and examples.





[JAVAEETUTORIAL-215] Update Faces Flows example to use appropriate naming conventions Created: 10/Jul/13  Updated: 30/Jul/13  Resolved: 30/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Improvement Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Ed Burns (the JavaServer Faces spec lead) wrote an article for the German Oracle users website recommending some naming conventions for Faces Flows applications. The example in the tutorial should be modified to use these.



 Comments   
Comment by Kim Haase [ 30/Jul/13 ]

Created new example (simple-flow) to illustrate points made in Ed's article, and updated jsf-configure chapter.





[JAVAEETUTORIAL-210] Debug options need correcting Created: 02/Jul/13  Updated: 03/Jul/13  Resolved: 02/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In the section "Using a Debugger" (http://docs.oracle.com/javaee/7/tutorial/doc/usingexamples009.htm#BNADN), two default debug options are shown, with a bad line break:

-Xdebug -
Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9009

I thought I'd better check on them before fixing the line break (JAVAEETUTORIAL-176).

Neither option actually appears in the Debug Options field currently. What does appear is

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9009

Do others see this too? I will make the correction if someone confirms the change.



 Comments   
Comment by jendrock [ 02/Jul/13 ]

I also see this for the Debug Options field:

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9009

Please feel free to make the correction.

Comment by Kim Haase [ 02/Jul/13 ]

Thanks, Eric. I've made the fix.





[JAVAEETUTORIAL-209] Tables need to use HRuleFormal role Created: 02/Jul/13  Updated: 03/Jul/13  Resolved: 02/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I seem to have used the default (I think) "Formal" role when creating some new tables in JSF and JMS chapters, instead of the correct "HRuleFormal" role. I am fixing any I find in my chapters and will note any I find in others. They all look the same in PDF, but in HTML the Formal ones have shaded contents while the HRuleFormal ones don't.



 Comments   
Comment by Kim Haase [ 02/Jul/13 ]

Nope, I'm the only idiot. Fixed table roles in JMS Examples and Facelets chapters.





[JAVAEETUTORIAL-207] Fix application client terminology in JMS chapter(s) Created: 02/Jul/13  Updated: 02/Jul/13  Resolved: 02/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

A user reports the following issue, which should be addressed:

In chapter 31 of the Java EE 5 Tutorial, in the section "Writing Simple JMS Client Applications", first paragraph,

"This section shows how to create, package, and run simple JMS client programs packaged as stand-alone application clients."

The term "stand-alone application client" is confusing (especially the term "standalone" here), since they are actually Java EE Application Client, using Java EE annotations for resource injection, and are run in a Java EE Application Client container.

This is even more confusing since the rest of the section explains that there are some differences when a JMS client is run in an application server (meaning, as a normal Java Component like a Web component or EJB, I suppose).

Usually the term "standalone" is used for "standalone Java client", which are not run within a container but in a normal JVM.



 Comments   
Comment by Kim Haase [ 02/Jul/13 ]

I suddenly noticed that the user raised the issue against the Java EE 5 Tutorial, which is not being updated. We have not used the problematic terminology in the Java EE 6 or 7 tutorials.





[JAVAEETUTORIAL-206] Improve information about JSF API reference details Created: 01/Jul/13  Updated: 03/Jul/13  Resolved: 02/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

A user has pointed out that it is not clear in Section 10.2 where to find information about the tags and attributes described there. Links to this information should be added to this section.



 Comments   
Comment by Kim Haase [ 02/Jul/13 ]

Checked in fix to section 10.2.





[JAVAEETUTORIAL-189] Use rich formatting with multi colors fonts and styles Created: 13/Jun/13  Updated: 26/Mar/14  Resolved: 25/Mar/14

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.4

Type: New Feature Priority: Minor
Reporter: miss_duke Assignee: Ian Evans
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: format, readability, style

 Description   

Java tutorial now uses limited colors and fonts. For example Java code snippets in the tutorial remains in plain black.

Code snippets may be formatted as they are displayed in an IDE editor. Various colors fonts and styles may be used wherever possible in the tutorial text.

This needs some effort but this will tremendously increase the readability of the tutorial.

I can point Android tutorials as an example for good presentation:
http://developer.android.com/guide/components/activities.html



 Comments   
Comment by Ian Evans [ 24/Jun/13 ]

We're working on finding a solution that will work with our tools. We'll update this issue as we make progress.

Comment by Ian Evans [ 19/Sep/13 ]

Lowering the priority and deferring to the next release. Our tools team does not have a solution for us at this time.

Comment by Kim Haase [ 25/Mar/14 ]

There is no plan for our tools to implement this feature. Colors used for syntactic purposes impede the accessibility of the documentation.

Comment by miss_duke [ 26/Mar/14 ]

"...Colors used for syntactic purposes impede the accessibility of the documentation..."

Colors used in Git, Android, AngularJS websites are all impede accessibility?! (If you have no resource or skill set please admit it, do not say stupid reasons)

Comment by Kim Haase [ 26/Mar/14 ]

1) Oracle focuses very strongly on accessibility issues, more than most companies.

2) Our tools team will not devote resources to features that might impede accessibility.





[JAVAEETUTORIAL-185] Webapp chapter begins with some xref problems Created: 10/Jun/13  Updated: 10/Jun/13  Resolved: 10/Jun/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Bug Priority: Minor
Reporter: Kim Haase Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

At the beginning of chapter 6, the range of chapters that cover presentation-oriented web apps is too small; it should go up to chapter 17. Also, some of the cress-reference formats need tweaking.



 Comments   
Comment by Kim Haase [ 10/Jun/13 ]

Fixed in source.





[JAVAEETUTORIAL-178] 17.6 The mood example application, should go before 17.5 The fileupload example application Created: 06/Jun/13  Updated: 11/Jun/13  Resolved: 11/Jun/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.0
Fix Version/s: 7.0.1

Type: Improvement Priority: Minor
Reporter: rcervera Assignee: rcervera
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

mood is a more basic example, so it should come before the fileupload example.



 Comments   
Comment by rcervera [ 11/Jun/13 ]

Fixed in the book sources.





[JAVAEETUTORIAL-222] Section 'Declaring Welcome Files' would be better placed in 'Configuring' than in 'Example' Created: 29/Jul/13  Updated: 29/Jul/13  Resolved: 29/Jul/13

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.1
Fix Version/s: 7.0.2

Type: Improvement Priority: Minor
Reporter: AnnTea Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Section "6.4.4 Declaring Welcome Files" seems misplaced inside Chapter "6.4 The hello2 Example".
It would be better placed inside Chapter "6.5 Configuring Web Applications"



 Comments   
Comment by Kim Haase [ 29/Jul/13 ]

Thanks for noticing this. Not only is it misplaced, but it is outdated and could use some reworking.

Comment by Kim Haase [ 29/Jul/13 ]

Moved welcome files section from 6.4.4 to 6.5.2 and revised it slightly.





[JAVAEETUTORIAL-165] Broken link to Mojarra Release Notes Created: 27/May/13  Updated: 28/May/13  Resolved: 28/May/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.8
Fix Version/s: 7.0.1

Type: Bug Priority: Minor
Reporter: Michael Dobrovolsky Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Broken link to Mojarra Release Notes in the section Further Information about JavaServer Faces Technology. Should be https://javaserverfaces.java.net/2.1/releasenotes.html instead of http://javaserverfaces.java.net/nonav/rlnotes/2.1.4/.



 Comments   
Comment by Kim Haase [ 28/May/13 ]

We are removing links to this volatile location from the Java EE 7 tutorial.





[JAVAEETUTORIAL-164] Broken link to the terms of the License for tutorial examples source files Created: 27/May/13  Updated: 28/May/13  Resolved: 28/May/13

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: 6.0.8
Fix Version/s: 7.0.1

Type: Bug Priority: Minor
Reporter: Michael Dobrovolsky Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Comment sections of tutorial source files point to the terms of the License at: http://developers.sun.com/license/berkeley_license.html but this link redirects to http://www.oracle.com/technetwork/java/index.html.



 Comments   
Comment by Kim Haase [ 28/May/13 ]

The link in the Java EE 7 tutorial examples goes to http://java.net/projects/javaeetutorial/pages/BerkeleyLicense.





[JAVAEETUTORIAL-163] Different location of the Reload Enabled check box in GlassFish Server 3.1.2.2 Created: 27/May/13  Updated: 28/May/13  Resolved: 28/May/13

Status: Closed
Project: javaeetutorial
Component/s: doc
Affects Version/s: 6.0.8
Fix Version/s: 7.0.1

Type: Bug Priority: Minor
Reporter: Michael Dobrovolsky Assignee: Kim Haase
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

GlassFish Server Open Source Edition 3.1.2.2 (build 5)



 Description   

In the recent version of GlassFish Server (3.1.2.2) the Reload Enabled check box is located not in the Advanced tab of the GlassFish Server node as described in the section To Disable or Modify Dynamic Reloading but in the Applications Configuration tab of the Domain node instead.



 Comments   
Comment by Kim Haase [ 28/May/13 ]

The Java EE 7 tutorial will not provide instructions on disabling dynamic reloading, since this is an advanced task.





[JAVAEETUTORIAL-279] Chapter 23 Coding the Enterprise Bean Class Created: 12/Jul/14  Updated: 23/Jul/14  Resolved: 23/Jul/14

Status: Closed
Project: javaeetutorial
Component/s: examples
Affects Version/s: None
Fix Version/s: 7.0.4

Type: Bug Priority: Minor
Reporter: shapir Assignee: super_glassfish
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The @WebSerlet code snippet declares
@EJB
ConverterBean converterBean

but later on uses variable converter- which is not declared -, rather than converterBean:
BigDecimal yenAmount = converter.dollarToYen(d);

// call the ConverterBean.yenToEuro() method to get the amount
// in Euros
BigDecimal euroAmount = converter.yenToEuro(yenAmount);



 Comments   
Comment by jendrock [ 23/Jul/14 ]

This issue is logged against the Java EE 6 Tutorial. We recommend that you use the Java EE 7 Tutorial, in which the problem that you identified has been fixed. See http://docs.oracle.com/javaee/7/tutorial/doc/ejb-gettingstarted001.htm#GIPSI. In the corresponding section, the @WebServlet code snippet now declares:

@EJB
ConverterBean converter;

then later uses the variable converter, which now has been declared.

// call the ConverterBean.dollarToYen() method to get the amount
// in Yen
BigDecimal yenAmount = converter.dollarToYen(d);

// call the ConverterBean.yenToEuro() method to get the amount
// in Euros
BigDecimal euroAmount = converter.yenToEuro(yenAmount);

The Java EE 7 Tutorial is actively maintained; we correct all errors promptly in that version. We will make every effort to suppress the Java EE 6 and Java EE 5 tutorial entries in the search engine results so this problem is minimized in the future.

Comment by jendrock [ 23/Jul/14 ]

The content is correct in the Java EE 7 Tutorial. See http://docs.oracle.com/javaee/7/tutorial/doc/ejb-gettingstarted001.htm#GIPSI.





[JAVAEETUTORIAL-278] Change the sample to use a non privileged port. Created: 30/Jun/14  Updated: 30/Jun/14  Resolved: 30/Jun/14

Status: Closed
Project: javaeetutorial
Component/s: None
Affects Version/s: 7.0.4
Fix Version/s: 7.0.5

Type: Improvement Priority: Minor
Reporter: David Delabassee Assignee: jendrock
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

NA



 Description   

By default the EJB/Async sample comes with a SMTP Mock server (good thing!) to simulate a back-end SMTP server. But that server uses port 25 which is a privileged ports on Unix. If the user is not aware of that, the sample will fail (timeout). On some OS, it's tricky to get around this.

Since we provides both client (EJB) and server (SMTP), the sample could easily be changed to use a non privileged ports (eg. 1025) instead.

--8<--
Properties props = new Properties();
props.put("mail.smtp.port", "1025");
try {
Session session = Session.getInstance(props,
new javax.mail.Authenticator() {
protected PasswordAuthentication getPasswordAuthentication()

{ return new PasswordAuthentication("test", "test"); }

});
...



 Comments   
Comment by jendrock [ 30/Jun/14 ]

I agree that we should be using a port other than port 25, the default SMTP port. I chose to use 3025, which should be safe.

I modified the Server.java file to reflect this change. Here are the changed lines:

ServerSocket server = new ServerSocket(3025);
System.out.println("[Test SMTP server listening on port 3025]");

Then I modified MailerBean.java to use the new port number. Here are the changed lines I added to the try statement:

try {
Properties properties = new Properties();
properties.put("mail.smtp.port", "3025");
session = Session.getInstance(properties);

Should work fine now. Will also make the appropriate changes to reflect the new port number in the documentation. All this will appear in the next release of the tutorial. Also caught a problem in the template.xhtml file that was introduced as a result of the copyright sweep and fixed that.





[JAVAEETUTORIAL-277] Duke Tutoring Admin user doesn't exist Created: 30/Jun/14  Updated: 30/Jun/14  Resolved: 30/Jun/14

Status: Closed
Project: