[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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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... Closed

 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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-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-75] Enhance Message Inflow information in Chapter 46, "Running the Resource Adapter Example" Created: 21/Mar/12  Updated: 16/Aug/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: Minor
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   

After the MDB in the mailconnector example has been fixed, and performs as a listener, the documentation in Chapter 46, "Running the Resource Adapter Example", needs to be augmented to include additional information pertaining to the Work Map. A 2004 whitepaper, Creating Resource Adapters with J2EE Connector Architecture 1.5, by Alejandro Murillo and Binod P.G. contains 7 pages of information (pp. 13-20) explaining how the MDB is used in the example, implementing and configuring inbound message inflow, endpoint activation/deactivation, etc. This content needs to be updated and incorporated into the chapter, especially the content that starts on page 16 and pertains to endpoint activation and message delivery.



 Comments   
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). It simply isn't worth the effort to show this feature at the expense of making managed beans do something that they shouldn't have to do.

In light of this finding, agreed upon by Chinmayee, Ricardo, Kim, and myself, we will not fix this issue.

Comment by jendrock [ 16/Aug/12 ]

We will not fix this issue. See previous comment for reason.





[JAVAEETUTORIAL-124] technically incorrect statement in context of Java Created: 11/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: Minor
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   

There is 'An empty string is represented as "". It is a character array of zero characters. A null string is represented by null. It can be described as the absence of a string instance.' as the second paragraph after "Validating Null and Empty Strings" on the page named "Using Bean Validation" at http://docs.oracle.com/javaee/6/tutorial/doc/gircz.html. The second sentence is not correct in the Java context. A character array is mutable. A String is not. So a string in Java is not a character array. It may be more technically accurate to say "It is a character sequence of zero characters." As String implements CharSequence, this is technically correct as well as conceptually correct.



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

Thank you for catching this error.

Comment by Kim Haase [ 25/Jul/12 ]

Checked in fix that changes "array" to "sequence".





[JAVAEETUTORIAL-118] note that since the IDs are generated the IDs may not match 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: Improvement Priority: Minor
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   

There is an example at the end of the "Rendering a Hyperlink with the h:commandLink Tag" section of the page at http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html titled "Adding Components to a Page Using HTML Tags". It may be worth noting that the IDs are generated so they may not match. I believe there are also two JSF implementations. I'm sure MyFaces wouldn't generate calls to functions in a mojarra object.



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

We definitely need to point out that the generated IDs are implementation-specific and that the prefixes will probably not be the same as the ones shown.

I think there are even more than two JSF implementations around, but we assume that tutorial users are using only GlassFish.

Comment by Ian Evans [ 09/Jul/12 ]

I'm trying to understand why the generated IDs would matter to web developers, and I'm coming up empty.

It's true that the generated IDs in the HTML will vary by implementation, since the spec doesn't require them to match the IDs in the Facelets tags. But I can't think of a use-case where output HTML from one implementation would mix with output HTML from another implementation.

The only scenario I can think of where the IDs matter is for a custom Javascript library. However, if you're writing your own Javascript that uses the HTML tag IDs, you're going beyond the platform, and are relying on non-portable features.

Comment by Brant Gurganus [ 09/Jul/12 ]

I agree with Ian's statements. However, in the context of a tutorial, there can be an expectation that what is shown in output in the tutorial would match your own output. The issue is more about that expectation and managing that than about interoperating with the IDs.

Comment by Kim Haase [ 24/Apr/13 ]

I think that for anyone running GlassFish the output will be exactly that or something very similar, but I changed it to "HTML that looks something like the following".

Fixed for 7.0.1.





[JAVAEETUTORIAL-115] include line numbers of excerpts from samples Created: 28/Jun/12  Updated: 16/Aug/12  Resolved: 06/Jul/12

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

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


 Description   

This issue happens in the "The immediate Attribute" section of the page entitled "Adding Components to a Page Using HTML Tags" at http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html. It also happens elsewhere throughout the tutorial. There are code excerpts from bookshowcart.xhtml in the dukes-bookstore project. It'd be nice if line numbers were indicated so it'd be easier to find these code segments in the actual example project's files.



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

Our documentation tools don't provide this capability, and it would also be very hard to keep the line numbers correct as examples were updated.





[JAVAEETUTORIAL-64] Consider adding instructions on how to package a custom component in its own JAR file for re-use Created: 07/Mar/12  Updated: 01/Aug/13  Resolved: 01/Aug/13

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

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


 Comments   
Comment by Kim Haase [ 08/Mar/12 ]

Thanks for this suggestion. Would a custom component be packaged as a set of utility classes as in dukes-tutoring/dukes-tutoring-common? We could consider breaking out the custom component of dukes-bookstore this way, in the future.

Comment by Kim Haase [ 08/Mar/12 ]

Assigning to doc component, but may also involve an examples change.

Comment by Ian Evans [ 08/Mar/12 ]

The packaging would be similar to dukes-forest/dukes-resources and dukes-tutoring-common.

dukes-resources shows how to package composite components/images/CSS in a separate JAR file. Do we document how dukes-resources is packaged?

If Forest used custom components (i.e. components implemented as Java classes) they'd be packaged like this:
src/java/com/forest/web/CustomComponentName.java

Comment by Kim Haase [ 08/Mar/12 ]

dukes-resources uses the structure described (briefly) in http://docs.oracle.com/javaee/6/tutorial/doc/girgm.html and http://docs.oracle.com/javaee/6/tutorial/doc/glnrj.html#glwkw.

dukes-tutoring-common contains the entities as well as some utility classes and messages (one of which, DigestUtil, does not seem to be mentioned in the chapter).

Separating out the dukes-bookstore custom components would I think involve moving the components, model, renderers, and taglib into a separate jar (probably not the listeners, though). These are in several different packages.

Comment by Ian Evans [ 08/Mar/12 ]

DigestUtil is something of an orphan right now. Storing passwords clear in the database isn't a good idea, but getting digest auth to work isn't trivial. So I punted, for now, and DigestUtil should probably be removed until I figure it out.

The concept of a utility JAR isn't that complicated, so I don't know if we need to refactor dukes-bookstore for this.

Comment by Kim Haase [ 13/Feb/13 ]

If Manfred can point to some information on packaging custom components, I will attempt to provide this information for 7.0. Otherwise, I will close this as Won't Fix.

Comment by Manfred Riem [ 13/Feb/13 ]

See http://weblogs.java.net/blog/mriem/archive/2012/10/05/packaging-your-jsf-converter

Comment by Kim Haase [ 13/Feb/13 ]

Your example of a converter does not show the use of annotations. Do they change anything? We annotate the source code with @FacesComponent instead of declaring it in faces-config. Is faces-config necessary if you use annotations?

Also, for a component, what else would you need to package? The components, model, renderers, and taglib?

Comment by Kim Haase [ 01/Aug/13 ]

Closing, since I haven't received sufficient information on how to do this.





[JAVAEETUTORIAL-137] Broken Links on Page "Further Information about the Connector Architecture" Created: 03/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: Minor
Reporter: RobertHecht Assignee: jendrock
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: JCA, link

 Description   

The links on the page "Further Information about the Connector Architecture" are broken.



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

This is from the Java EE 5 Tutorial.
http://docs.oracle.com/javaee/5/tutorial/doc/bnckk.html

There are no scheduled updates to the Java EE 5 Tutorial. Lowering the priority, but keeping the issue open in case we do update the EE 5 Tutorial in the future.

Comment by jendrock [ 04/Jan/13 ]

We will not be updating the Java EE 5 Tutorial. Even if we wanted to update the links, I believe that the links for downloading the Connector Architecture 1.5 specification from the JCP web site are broken too. See http://jcp.org/aboutJava/communityprocess/final/jsr112/index.html.

The current version of the Connector Architecture is 1.6. The Java EE 6 Tutorial describes version 1.6 of the specification. The "Further Information about Resources" page at http://docs.oracle.com/javaee/6/tutorial/doc/bncjw.html in the Java EE 6 Tutorial provides the links for which you are looking.





Rework JSF lifecycle information (JAVAEETUTORIAL-88)

[JAVAEETUTORIAL-113] section depends on knowledge not yet covered (bad sequencing) 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: Sub-task Priority: Minor
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 occurs in "The immediate Attribute" section of the page entitled "Adding Components to a Page Using HTML Tags" at http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html. The section mentions the "force events, validations, and conversions to be processed when request parameter values are applied." However, the page request lifecycle that tells the ordinary sequencing of these activities has not yet been covered in the tutorial. At a minimum, it'd be good to link elsewhere in the tutorial where such things are covered, so you have the appropriate context to understand that section. Ideally, the tutorial would be sequenced with this section coming sometime after the section covering that request lifecycle.



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

Good point. I'm making this a sub-task of a larger issue on the JSF lifecycle documentation.

Comment by Kim Haase [ 24/Apr/13 ]

Fixed with JAVAEETUTORIAL-88.





[JAVAEETUTORIAL-112] link to ActionSource documentation Created: 28/Jun/12  Updated: 17/Aug/12  Resolved: 17/Aug/12

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

Type: Improvement Priority: Minor
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. In the section about "The immediate Attribute", it mentions the ActionSource interface. I expect a link to a page about the ActionSource interface such as the API documentation for it.



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

Thank you. We don't usually link directly to a page of the API documentation, but we should include the full package name to make it easy to look up (javax.faces.component.ActionSource, in this case).

Comment by Kim Haase [ 17/Aug/12 ]

This issue is larger than just the one change. We have not been consistent in providing package names in the JSF chapters, so I'm making numerous fixes of this nature.

Comment by Kim Haase [ 17/Aug/12 ]

I have committed fixes to all the JSF chapters. I think writers have been more careful with most other technologies, but it's worth keeping an eye on.





[JAVAEETUTORIAL-114] create actual examples instead of inviting user to imagine Created: 28/Jun/12  Updated: 19/Jul/13  Resolved: 19/Jul/13

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

Type: Improvement Priority: Minor
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 is in the "The immediate Attribute" section of the page entitled "Adding Components to a Page Using HTML Tags" at http://docs.oracle.com/javaee/6/tutorial/doc/bnarf.html. The third paragraph in this section starts with "Assume that you have a page with a button and a field for entering the quantity of a book in a shopping cart." Why are we assuming here? This is a tutorial, so have readers open an existing example of this scenario or code it up and see what happens. This also relates to other feedback on the sequencing of describing how immediate works without describing the ordinary request lifecycle. The user doesn't yet have the context to imagine what would happen.



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

This is a good suggestion, and we should do something with this section. We have been hoping to add some simpler examples along with the large case study. I'm not absolutely certain that the immediate attribute is the best candidate for such an example, but I'll certainly try.

JAVAEETUTORIAL-88, when fixed, should help provide more lifecycle context at this point.

There's also a subject-verb agreement typo ("occurs" in the 4th paragraph) that should be fixed.

Comment by Kim Haase [ 24/Apr/13 ]

Deferring to an update release later in the year.

Comment by Kim Haase [ 19/Jul/13 ]

Since the lifecycle information is now provided before this chapter, users have the information needed to understand the hypothetical situation presented. The section does describe in detail an example from the case study that provides a more realistic use case.





[JAVAEETUTORIAL-108] VDL not crossreferenced Created: 27/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: Minor
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 page at http://docs.oracle.com/javaee/6/tutorial/doc/bnaia.html describing "Defining a Tag Attribute Type" brings up View Description Language (VDL) as the means by which custom tags are created. However, the creation of the custom tags is not covered nor is there a link to a page about custom tag creation. I think it is early to learn about custom tags in the tutorial sequence, so I'd say a link to elsewhere is most applicable.



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

Yes, we definitely need a forward cross-reference both here and in Chapter 4, where custom tags are first mentioned (http://docs.oracle.com/javaee/6/tutorial/doc/bnapk.html). Also, the terms "view" and "View Description Language" should be introduced earlier than they are, and "View Description Language" should be defined.

Comment by Kim Haase [ 21/Aug/12 ]

Actually, the EL chapter contains additional material that needs to be updated for JSF (instead of JSP). Custom tags are used much less in JSF than in JSP, so we really don't need to talk about them this early; but they are used as examples elsewhere in the chapter.

I think the whole "Defining a Tag Attribute Type" section does after all need to be moved, possibly as a subsection of http://docs.oracle.com/javaee/6/tutorial/doc/bnawn.html, "Defining the Custom Component Tag in a Tag Library Descriptor." The custom component tag in that advanced chapter doesn't even have any custom attributes, so the topic remains theoretical (and should – it was more relevant at EE 5).

Comment by Kim Haase [ 24/Apr/13 ]

The entire section "Defining a Tag Attribute Type" applies to JSP development but not to JSF, so I have removed it. I made a few more updates in the EL chapter to make it apply better to JSF.





[JAVAEETUTORIAL-107] serializable class does not define serialVersionUID Created: 24/Jun/12  Updated: 05/Feb/13  Resolved: 05/Feb/13

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

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


 Description   

The managed bean described at http://docs.oracle.com/javaee/6/tutorial/doc/gipob.html is marked as Serializable but does not define a serialVersionUID. While not technically necessary, I believe it is best practice to define it since different JVMs will generate different default serialVersionUIDs so retroactively setting a compatible serialVersionUID may not be easy.



 Comments   
Comment by Ian Evans [ 14/Aug/12 ]

There also is the issue that NetBeans adds serialVersionUID as an editor hint, but defaults the value to 1L for every class. So, we need to sweep through our sources to make sure that we have unique IDs for our serializable classes.

Comment by Kim Haase [ 14/Aug/12 ]

Yes.

A few other chapters in the book contain code with the 1L assignment. I am fixing the CDI one. It occurs in a couple of persistence chapters also.

Comment by Kim Haase [ 15/Aug/12 ]

Checked in code and book fixes for web/guessnumber and cdi/guessnumber examples.

Comment by Ian Evans [ 15/Aug/12 ]

Revision: 984
Author: ievans
Date: 2012-08-15 09:47
Message: Replaced all serialVersionUID fields with unique values; general code cleanup (added @Override annotation, StringBuilder, improved logging syntax, etc.)
Issue #JAVAEETUTORIAL-107 - serializable class does not define serialVersionUID

Comment by Kim Haase [ 16/Aug/12 ]

Checked in code fixes for mailconnector example (revisions 988 and 989).

Comment by Kim Haase [ 17/Aug/12 ]

Committed more bookstore example classes that needed a serialVersionUID, at revision 992.

Comment by Kim Haase [ 20/Sep/12 ]

Committed cleaned-up code in cdi/decorators, including serialVersionUID, at revision 996.

Comment by Kim Haase [ 20/Sep/12 ]

Committed cleaned-up code in cdi/billpayment, including serialVersionUID, at revision 997.

Comment by Kim Haase [ 20/Sep/12 ]

Committed cleaned-up code in cdi/producerfields, including serialVersionUID, at revisions 998 and 1001.

Comment by Kim Haase [ 20/Sep/12 ]

Committed cleaned-up code in jms/clientmdbentity, including serialVersionUID, at revision 1000.

Comment by Kim Haase [ 20/Sep/12 ]

Committed cleaned-up code in Duke's Forest projects, including serialVersionUID, at revision 1002.

Comment by jendrock [ 05/Feb/13 ]

This issue has been fixed. Depending to whom you talk, this issue is either trivial or irrelevant. The 1L value, generated and inserted by the IDE is sufficient for the examples. In a real world production environment, a unique, generated UID would be a necessity, but not here. The change has been made to all or almost all of the examples already. Enough has been done to close the issue.





[JAVAEETUTORIAL-102] sequencing seems wrong Created: 24/Jun/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: Improvement Priority: Minor
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 "Configuring Web Applications: The hello2 Example" page at http://docs.oracle.com/javaee/6/tutorial/doc/bnaeo.html. This is under the "Setting Context and Initialization Parameters" contents item. The sequencing is wrong for the "To Add a Context Parameter Using NetBeans IDE" section relative to "To Create a web.xml File Using NetBeans IDE". At this point in the tutorial, no web.xml file has been created and the tutorial specifically points out that hello2 does not need one to run out of the box. In that context, the web.xml file needs created first so that section should come prior to adding the context parameter.
In the current situation, you have to click the link within the "To Add a Context Parameter Using NetBeans IDE" section that goes to the "To Create a web.xml File Using NetBeans IDE" section which takes you away from the sequence of tutorial steps.



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

Thank you for your careful reading of this chapter. This fix should probably be made in conjunction with implementing your equally valid suggestions in JAVAEETUTORIAL-106.

Comment by Kim Haase [ 16/Oct/12 ]

I have removed the information about setting initialization parameters, since this task is almost never done and is too advanced for the introductory chapter. I did not change the location of the web.xml creation task, because this rarely has to be done for JavaServer Faces applications – NetBeans creates the web.xml file automatically.

Comment by Kim Haase [ 06/Nov/12 ]

Closing after putting back fix.





[JAVAEETUTORIAL-90] Relationship between JSF tags and input components should be mentioned more 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: 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   

The tutorial should reverse its current practice of avoiding explicit mention of JSF components that underlie the Facelets tags.



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

Changed my mind about this. We can mention the existence of the underlying components in Using JSF Technology in Web Pages, but focus on the use of the tags. The components are more prominent in the Developing with JSF Technology chapter and can stay there.





[JAVAEETUTORIAL-84] mailconnector example: Default server name on mailfolder.xhtml should be 'localhost' Created: 23/Apr/12  Updated: 06/Jun/12  Resolved: 06/Jun/12

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

Type: Improvement Priority: Minor
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   

If the user sends an email and then goes to check the messages on the sample application, the default value for the server is "ServerName". If the user does not change it, they will not see the messages that they sent and they may think that the application does not work. Changing it to "localhost" solves the problem, but it may not be intuitive for a new user.



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

Fixed and committed at revision 924.





[JAVAEETUTORIAL-100] Async example doesn't always fail as described Created: 13/Jun/12  Updated: 19/Jun/12  Resolved: 19/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: 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

Attachments: Text File issue100.log    

 Description   

At the end of the two sections on running the async example are the following sentences:

"If an error occurs, the status will read Encountered an error. Check the server.log file for your domain to find the cause of the error."

If a user happens to have run the mailconnector example before they run this example, and they still have the mock-javamail JAR file in their glassfish/lib directory, the status message they see will be "javax.ejb.EJBException", and the server log stack trace will contain

SEVERE: Error in sending message.
WARNING: EJB5184:A system exception occurred during an invocation on EJB MailerBean, method: public java.util.concurrent.Future async.ejb.MailerBean.sendMessage(java.lang.String)
WARNING: javax.ejb.EJBException
...
Caused by: java.lang.NullPointerException
at async.ejb.MailerBean.sendMessage(MailerBean.java:63)

I don't know if this belongs in the tutorial itself or in the FAQ – probably the latter?



 Comments   
Comment by Ian Evans [ 19/Jun/12 ]

Could you attach your server.log? I want to know why the EJBException was thrown.

Does the mailconnector example also use mail/myExampleSession?

Comment by Kim Haase [ 19/Jun/12 ]

Here is the server log from today, when I just started GF, edited the glassfish-resources file in async/setup, deployed async, and tried to send a message, then undeployed and shut down GF.

The javamail resource in mailconnector has a different name, mail/MySession.

I guess you are trying to figure out how to detect this particular problem and generate a useful error message? That would be good, though it is an error that won't occur if people run the tutorial examples in book order. At a minimum we should document the need to move the mock-javamail jar out of glassfish/lib if it happens to be there.

Comment by Ian Evans [ 19/Jun/12 ]

I don't see a reason why the presence of mock-javamail.jar should cause an EJBException, I guess. I'd like to find out why. Documenting the workaround in the FAQ is probably the easy step, but if we can allow the different examples to co-exist that's preferable.

Comment by Ian Evans [ 19/Jun/12 ]

Ok, so mock-javamail.jar doesn't implement an SMPTS provider.
SEVERE: Error in sending message.
SEVERE: No provider for smtps

The NPE was caused by how I was trying to log the exception. Just changing the catch to:
} catch (MessagingException ex)

{ logger.severe("Error in sending message."); status = "Encountered an error: " + ex.getMessage(); logger.severe(ex.getMessage()); }

Logs the error message properly and doesn't cause a system exception. I'll check in the changes, but we should add a FAQ entry documenting that you must remove mock-javamail.jar before running async.

Comment by Ian Evans [ 19/Jun/12 ]

Fixed the NPE when the message couldn't be sent. The FAQ needs to be updated to include information on removing mock-javamail.jar from glassfish/lib.

Does the mailconnector example section need instructions on this as well?

Comment by Kim Haase [ 19/Jun/12 ]

> Does the mailconnector example section need instructions on this as well?

Yes, we should add something at the end about removing it and restarting GlassFish just in case. Shall I do it as part of this issue?

Comment by Ian Evans [ 19/Jun/12 ]

Sure. Go ahead and reopen it and reassign.

Comment by Kim Haase [ 19/Jun/12 ]

I went ahead and made the documentation fix for the connector example as part of this issue.

Comment by Kim Haase [ 19/Jun/12 ]

Assigning to myself for doc fix.

Comment by Kim Haase [ 19/Jun/12 ]

Made fix in Epic and Frame versions of connector example chapter.





[JAVAEETUTORIAL-99] Customer example and curl - 303 status when DELETE should be 204 instead Created: 13/Jun/12  Updated: 12/Jul/12  Resolved: 12/Jul/12

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

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   

http://docs.oracle.com/javaee/6/tutorial/doc/gkoib.html#gkqjl

"To delete a customer record, use the following command:
curl -i -X DELETE http://localhost:8080/customer/Customer/1
A successful DELETE returns an HTTP Status: 303 status."

It looks like 303 in the text should be 204 instead, which is what we get when we run this example with curl. 204 is also the status expected when deleting on CustomerClient.java:

// Test the DELETE method
response = webResource.path("1").delete(ClientResponse.class);

logger.info("DELETE status: " + response.getStatus());
if (response.getStatus() == 204) {
logger.info("DELETE succeeded (no content)");
} else {
logger.info("DELETE failed");
}



 Comments   
Comment by rcervera [ 12/Jul/12 ]

Replaced status code in the new writeup for the customer example.

Comment by rcervera [ 12/Jul/12 ]

Issue is now fixed.





[JAVAEETUTORIAL-98] Using curl to run the customer example - Indicate that the user has to be inside the customer/ directory Created: 12/Jun/12  Updated: 13/Jul/12  Resolved: 13/Jul/12

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

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   

Section Using Curl to Run the customer Example Application at:
http://docs.oracle.com/javaee/6/tutorial/doc/gkoib.html

Should include a sentence that tells the user that he needs to run Curl inside of the example directory, such as

C:/glassfish3/glassfish/docs/javaee-tutorial/examples/jaxrs/customer/build/generated-sources/rest-test/test-resbeans.html



 Comments   
Comment by rcervera [ 12/Jun/12 ]

For the directory, I meant like:
C:\glassfish3\glassfish\docs\javaee-tutorial\examples\jaxrs\customer

Comment by rcervera [ 13/Jul/12 ]

Committed an update to the chapter that adds this message in the Curl section.





[JAVAEETUTORIAL-81] Incomplete sentence in Registering Application Messages (web tier) Created: 19/Apr/12  Updated: 05/Jun/12  Resolved: 05/Jun/12

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

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

Tags: typo, web

 Description   

http://docs.oracle.com/javaee/6/tutorial/doc/bnaxb.html

"The resource-bundle element represents a set of localized messages. It must contain the fully qualified path to the resource bundle containing the localized messages (in this case, dukestutoring.web.messages.Messages). The var element specifies that ..."

^This sentence is not complete. Eric suggested that it should be something like "The <var> element defines the name by which page authors refer to the resource bundle with the expression language."



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

Checked in fix to JSF configuration chapter.





[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: javaeetutorial
Component/s: doc
Affects Version/s: None
Fix Version/s: 7.0.5

Type: Bug 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   

The Duke Tutoring doc suggest (58.4.1.3) to use the admin@example.com / javaee user for the Admin Interface. It would be useful to let the user that he needs to create that user (and how)

The error message is more useful:
--8<--
Please enter a user name or password that is authorized to access this application. For this application, this means a user that has been created in the "tutoringRealm" realm and has been assigned to the group of "Administrator".
--8<--



 Comments   
Comment by jendrock [ 30/Jun/14 ]

The admin user is created as part of the process of creating the tutoringRealm. I saw this error as it was being created:

exec-maven-plugin:1.2.1:exec (create-tutoring-realm) @ dukes-tutoring-war —
remote failure: Creation of Authrealm tutorin