[GLASSFISH-16536] provide infrastructure to display progress bar in admin console Created: 03/May/11  Updated: 17/Oct/12

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: None
Fix Version/s: future release

Type: New Feature Priority: Blocker
Reporter: Anissa Lam Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Dependency
depends on GLASSFISH-12033 DYREC-007: progress status implementa... Resolved
Tags: ee7ri_cleanup_deferred

 Description   

This is one of the requirement for 3.2 GUI. We need this to display status to user when setting up VM template or long deployment process.



 Comments   
Comment by Tom Mueller [ 17/Oct/12 ]

Marking the fix version field as "future-release". This is based on an evaluation by John, Michael, and Tom WRT to the PRD for the Java EE 7 RI/SDK. This issues was deemed to not be a P1 for that release. If this is in error or there are other reasons why this RFE should be targeted for the Java EE 7 RI/SDK release, then change the fix version field back to an appropriate build.





[GLASSFISH-19735] [PERF] Page to page navigation has slowed down and showing the long process popup Created: 27/Feb/13  Updated: 11/Sep/14

Status: In Progress
Project: glassfish
Component/s: admin_gui
Affects Version/s: 4.0_b77
Fix Version/s: future release

Type: Task Priority: Critical
Reporter: Anissa Lam Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: devx_web

 Description   

I notice that starting about a week or 2 ago, the admin console page to page navigation has slowed down significantly. Very often, the 'long process is detected' popup also shows up.
The doc team also reports the same observation.

There isn't a particular way to reproduce the issue. But if you use the console by clicking around, creating or deleting some objects, you will for sure notice the poor performance.
I see this on my Mac and the issue shows up in all 3 browsers (chrome, firefox and safari) , so don't think this is a browser issue.



 Comments   
Comment by Jason Lee [ 28/Feb/13 ]

I think this is a performance regression in Jersey. Here are some rough timings taken from revisions before and after the latest integration:

r59530
GET http://localhost:4848/common/appServer/serverInstGeneralPe.jsf?instanceName=server&bare=true 200 OK 1.1s
GET http://localhost:4848/cluster/standalone/standaloneInstances.jsf?bare=true 200 OK 240ms
GET http://localhost:4848/common/appServer/serverInstGeneralPe.jsf?instanceName=server&bare=true 200 OK 855m
GET http://localhost:4848/cluster/cluster/clusters.jsf?bare=true 200 OK 259m
GET http://localhost:4848/common/appServer/serverInstGeneralPe.jsf?instanceName=server&bare=true 200 OK 875m

r59545 <- This is the 2.0m12-1 integration
GET http://localhost:4848/common/appServer/serverInstGeneralPe.jsf?instanceName=server&bare=true 200 OK 2.28s
GET http://localhost:4848/cluster/standalone/standaloneInstances.jsf?bare=true 200 OK 1.72s
GET http://localhost:4848/common/appServer/serverInstGeneralPe.jsf?instanceName=server&bare=true 200 OK 2.61s
GET http://localhost:4848/cluster/cluster/clusters.jsf?bare=true 200 OK 1.04s
GET http://localhost:4848/common/appServer/serverInstGeneralPe.jsf?instanceName=server&bare=true 200 OK 2.11s

I'll email the Jersey team to get their take.

Comment by Jason Lee [ 05/Mar/13 ]

The numbers listed above were pretty rough, page-level timings; that is, how long it takes from the click of the mouse to the response from the server. I added some logging on the server side that measures ONLY the Jersey calls (i.e., target.request()). Prior to the integration, here are the timings we see for requests on a single page:

r59530:

***** GET request for http://localhost:4848/management/domain/servers/server/server finished in 31 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/uptime finished in 8 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/servers/server/server finished in 24 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener finished in 37 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener finished in 36 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener/admin-listener.json finished in 42 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener/http-listener-1.json finished in 53 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener/http-listener-2.json finished in 41 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/servers/server/server finished in 23 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener finished in 31 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener finished in 31 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener/SSL.json finished in 37 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener/SSL_MUTUALAUTH.json finished in 37 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener/orb-listener-1.json finished in 44 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/_get-restart-required finished in 7 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/anonymous-user-enabled finished in 10 milliseconds|#]

After the integration, this is what we see for the exact same page:

r59545:

***** GET request for http://localhost:4848/management/domain/servers/server/server finished in 82 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/uptime finished in 29 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/servers/server/server finished in 70 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener finished in 135 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener finished in 123 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener/admin-listener.json finished in 140 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener/http-listener-1.json finished in 181 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/network-config/network-listeners/network-listener/http-listener-2.json finished in 143 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/servers/server/server finished in 76 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener finished in 114 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener finished in 103 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener/SSL.json finished in 125 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener/SSL_MUTUALAUTH.json finished in 138 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/configs/config/server-config/iiop-service/iiop-listener/orb-listener-1.json finished in 185 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/_get-restart-required finished in 32 milliseconds|#]
***** GET request for http://localhost:4848/management/domain/anonymous-user-enabled finished in 44 milliseconds|#]

For reference, here are the lines of code in question:

long start = System.currentTimeMillis();
Response resp = target
    .request(RESPONSE_TYPE)
    .cookie(new Cookie(REST_TOKEN_COOKIE, getRestToken()))
    .get(Response.class);
GuiUtil.getLogger().log(Level.INFO, "\n\n***** GET request for {1} finished in {0} milliseconds", 
    new Object[] {
        (System.currentTimeMillis() - start), 
        address
    });

That's about as slimmed down, Jersey-only as you can get, and clearly after the integration, things get slower. If there are no objections, I will transfer this issue to the Jersey team (or perhaps file an issue on their tracker for this).

Comment by Jakub Podlesak [ 05/Mar/13 ]

I am not 100 % sure about the measurement method above, but the fact we do not have Jersey client side covered by performance tests is awful.
Please feel free to file a task in the Jersey JIRA to cover client side performance testing. Once implemented, we should be able to get some numbers also for previous Jersey releases and compare.

Comment by Jason Lee [ 05/Mar/13 ]

It is a pretty simple measure, but we get a pretty accurate timing, I think, on the processing time for the client request. At any rate, I have filed a task for the client-side performance testing coverage: http://java.net/jira/browse/JERSEY-1767

How quickly do you think this will be addressed? The performance in the console is raising eyebrows. Can we use the older version of the client in the meantime?

Comment by Jakub Podlesak [ 08/Mar/13 ]

To better understand where the regression is, it would be useful to have some numbers also with using a non Jersey client (e.g. curl) for the above tests.
Given that http://localhost:4848/management/domain application does not use Jersey client internally, of course.

Jason, would you have some cycles for it?

Comment by Anissa Lam [ 09/Apr/13 ]

I see that the performance has improved some after I filed this issue, although it still hasn't got back to the same level of performance like in 3.1.2.
There is lots of discussions regarding this, and i don't think Jason is planning to do anything specifically to address this issues in the console code.
I am changing this to Task and target that for the next release to see what console can do to improve the paga to page navigation.

One thing i notice is that, when refreshing the tree node, even though we called the ajax to just refresh a particular node, eg. Applications, the entire tree is refreshed, thus sending lots of requests to the backend to update the tree. We may want to look into why this is happening. But since its done asynchronously, the main page on the left isn't really waiting for the tree to completely refreshed before displaying the right side, thus not directly impacted by this whole tree update.

I am changing this to Task and target that for the next release to see what console can do to improve the paga to page navigation.





[GLASSFISH-14591] Return client specific message Created: 10/Nov/10  Updated: 07/Feb/13

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 4.0
Fix Version/s: future release

Type: Improvement Priority: Major
Reporter: Nazrul Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 14,591

 Description   

[Tracking Bug]

This came up during AS ARCH review

Currently, we are re-using CLIs. All the messages returned from the CLI is very
CLI centric. When this is displayed in GUI, some of the messages does not make
sense and not user friendly. It would be useful if REST (& CLI) can be client
aware and return messages that make sense for the client.



 Comments   
Comment by ludo [ 02/May/11 ]

not sure for 3.2

Comment by Tom Mueller [ 07/Feb/13 ]

Reassigning to Jason since Ludo is no longer on the project.





[GLASSFISH-10770] Physical Destinations Should Be Suggested Created: 03/Nov/09  Updated: 06/Oct/10

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: V3
Fix Version/s: future release

Type: Improvement Priority: Major
Reporter: abien Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: File resource_creation.tiff    
Issuezilla Id: 10,770
Tags: 3_1-exclude

 Description   

Glassfish v3b70:

If you create a new Topic / Queue (New JMS Destination Resource) you have to enter a physical destination
(see screenshot). You have to know the name and copy+paste it into the text box. This is confusing for
new GF users.

Suggestion: a combo box, already populated with existing physical destinations would do a much better
job.



 Comments   
Comment by abien [ 03/Nov/09 ]

Created an attachment (id=3734)
Glassfish v3 b70 admin console screenshot

Comment by Kim Haase [ 03/Nov/09 ]

You don't actually have to specify the name of an existing physical destination.
If you specify one that doesn't exist, JMS creates it on the fly when you first
access the destination resource. Normally, you'll specify a new physical
destination when you create the destination resource.

I have added this information (in brief form) to the inline help (it's already
in the online help).

Comment by abien [ 03/Nov/09 ]

You are right. However then I would pre-fill the physical destination textbox with the JNDI-name of the
logical.

The problem is: the names of logical destinations often look like jms/xyz, what is not possible for
physical. Either the prefix jms/ should be removed, or converted in something like "jms.".

So a combo box with a possibility to enter a new physical destination would be a superb solution .

Comment by Anissa Lam [ 03/Nov/09 ]

-> jdlee

Comment by Jason Lee [ 03/Nov/09 ]

We're past the feature freeze date (with HCF only 6 days away), so will this
have to wait until 3.1.

Comment by Jason Lee [ 18/Aug/10 ]

This should be pretty easy to do. Targeting for MS5.

Comment by Jason Lee [ 09/Sep/10 ]

In theory, this sounded easy, but in practice it's not. A destination resource can target multiple targets,
so creating the list of valid physical destinations isn't as straightforward as I thought it might be. I'm
going to move this to MS6, where i hope I'll have the time to think it through and get it implemented
correctly.

Comment by Jason Lee [ 06/Oct/10 ]

I hate to keep deferring this, but given the massive amount of work that has popped up for MS6, I'm going
to have to.





[GLASSFISH-13446] Develop a test for txn recovery Created: 14/Sep/10  Updated: 06/Oct/10

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 3.1
Fix Version/s: future release

Type: Improvement Priority: Major
Reporter: Jason Lee Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 13,446
Tags: 3_1-exclude

 Description   

A test needs to be developer that will test the transaction recovery page. For details on how this might be
done, see v2/appserv-tests/devtests/transaction/ee/cli.



 Comments   
Comment by Jason Lee [ 15/Sep/10 ]

-> MS6

Comment by Anissa Lam [ 22/Sep/10 ]

-> jdlee





[GLASSFISH-12470] Use of alias Created: 02/Jul/10  Updated: 07/Feb/13

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 3.1
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: Nazrul Assignee: Jason Lee
Resolution: Unresolved 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,470

 Description   

We need to re-evaluate how we show attribute name and use alias feature in CLI
to map CLI option to config bean attribute. We need to compare with the config
bean to disambiguate which attribute name to use.

In few cases, we are using real alias (nodeagent to node) where we don't want
nodeagent options to show-up.



 Comments   
Comment by Jason Lee [ 08/Jul/10 ]

-> Ludo

Comment by Jason Lee [ 13/Aug/10 ]

Bump to MS5

Comment by ludo [ 02/May/11 ]

trying for 07

Comment by Tom Mueller [ 07/Feb/13 ]

Reassigning to Jason since Ludo is no longer on the project.





[GLASSFISH-7370] Refine Page Layout Created: 17/Mar/09  Updated: 07/Dec/10

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: V3
Fix Version/s: future release

Type: New Feature Priority: Major
Reporter: kenpaulsen Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 7,370
Tags: 3_1-exclude

 Description   

The current prototype page layout is not quite there.

  • When the tree slides out of the way, it should be completely out of the way
    (see Google Maps).
  • We should evaluate the masthead to see if we can reduce its size.
  • Evaluate/optimize spacing between panels





[GLASSFISH-14957] [PERF] Optimize RESTful API such that in-process calls avoids the network overhead Created: 02/Dec/10  Updated: 15/Feb/13

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 3.1
Fix Version/s: future release

Type: Bug Priority: Major
Reporter: Jason Lee Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 3_1-exclude

 Description   

Paul Sandoz had mentioned the possibility of making Jersey avoid the network penalty when the client and server are in the same JVM. We need to investigate this to see if it's possible, as that could be a significant performance boost for the console.



 Comments   
Comment by ludo [ 14/Dec/10 ]

From Paul:
see the in memory test container:

http://java.net/projects/jersey/sources/svn/show/trunk/jersey/jersey-test-framework/jersey-test-framework-inmemory?rev=4410

specifically:

http://java.net/projects/jersey/sources/svn/content/trunk/jersey/jersey-test-framework/jersey-test-framework-inmemory/src/main/java/com/sun/jersey/test/framework/impl/container/inmemory/TestResourceClientHandler.java?rev=4410

Note that it serializes and buffers the request and response entity if present. It might be possible to avoid that for the response entity, not sure about the request entity. It may also be possible under certain circumstances to match the request/response entity Java instances with the client and server and pass by reference but care has to be taken depending on what assumptions the app is running with.

IIRC you are depending on the injection of some Grizzly request/response artifacts. Under such circumstances those artifacts will not be injected, so you may need to abstract out that information."

Not sure about the lack of injection in some area...Might be more complicated than expected.

Comment by Nazrul [ 20/Dec/10 ]

Ludo mentioned that it is too risky to fix at this point. Excluding from 3.1 count.

Comment by Tom Mueller [ 07/Feb/13 ]

Reassigning to Jason as Ludo is no longer on the project.





[GLASSFISH-17704] Clean up rest-service module Created: 10/Nov/11  Updated: 21/Feb/13

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 4.0
Fix Version/s: future release

Type: Task Priority: Major
Reporter: Sanjeeb Sahoo Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: spo

 Description   

Currently rest-service depends on some rest-client classes, but after talking to Jason I get the impression that they are never used. This is further confirmed by the fact that rest-client module is not yet part of the distribution and rest-service is still fully functional. So we should do some refactoring to make sure appropriate classes are packaged in rest-service module and stop dynamically importing classes.



 Comments   
Comment by Jason Lee [ 10/Nov/11 ]

The rest-service package DOES depend on the rest-client package, which IS packaged with the server:

$ ll ~/src/servers/glassfish3/glassfish/modules/rest*
rw-rr-@ 1 jdlee staff 14906 Nov 9 10:45 /Users/jdlee/src/servers/glassfish3/glassfish/modules/rest-client.jar
rw-rr-@ 1 jdlee staff 340743 Nov 9 10:45 /Users/jdlee/src/servers/glassfish3/glassfish/modules/rest-service.jar

There is, though, still some code in the rest-service module that I intend to move to rest-client, so as to make its consumption by clients easier/lighter.

The osgi.bundle files could probably use some clean up, though, which I'll address based on our email discussion.





[GLASSFISH-18281] IE9 and Google Chrome only: Export a LB config xml not working properly Created: 31/Jan/12  Updated: 17/Apr/14

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 3.1.2_b19
Fix Version/s: future release

Type: Bug Priority: Major
Reporter: arunkumar_s Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OEL, Google Chrome browser 16.0


Issue Links:
Duplicate
is duplicated by GLASSFISH-18282 Export Now button doesn't export load... Resolved

 Description   

This issue is browser specific(Only with google chrome browser)

Steps

1) Login Admin Console and Open a LB.
2) Go to Export Tab and click Export Now.

We can see the loadbalancer xml file is downloaded. But after that "A long-running process has been detected. Please wait..." dialog comes up and the admin console page hangs.

The dialog doesn't fade away at all. If we close it manually and try to access Export Tab in a LB , the dialog comes up again and hangs



 Comments   
Comment by Anissa Lam [ 31/Jan/12 ]

Jason, please take a look. You will need to install the Oracle GlassFish version to get the LB config feature.

Comment by Anissa Lam [ 31/Jan/12 ]

This is not a frequently used operation, and there is simple workaround: user a different browser of CLI. This is not a show stopper, exclude from 3.1.2 release.
When fixing this bug, ensure IE9 and Google Chrome works fine, although the root cause may not be the same.

We will release note this.

Comment by Anissa Lam [ 12/Feb/13 ]

Issues need to be addressed before 4.0 HCF (3/25)

Comment by Anissa Lam [ 20/Feb/13 ]

target for 4.0.1 according to guideline.





[GLASSFISH-18235] Enabling admin console for only one host Created: 22/Jan/12  Updated: 21/Sep/15

Status: Open
Project: glassfish
Component/s: admin
Affects Version/s: 3.1.1
Fix Version/s: 4.1.1

Type: Bug Priority: Major
Reporter: Alfio Gloria Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 3_1_2-exclude, admin-gui, listener, virtual_server

 Description   

I have three hosts host1, host2 and host3. I can access admin console from host1:4848, host2:4848 and host3:4848, but I wanna access to it from only one, suppose host1:4848.

If I set host1 in the virtual server page on admin console it doesn't work properly. Infact if the request cames from host2:4848 the admin-listener redirect it to __asadmin (default virtual server) because there's no host2 that listen to 4848.

My first idea was to change admin-listener default virtual server to "server". It works fine but it creates another problem: asadmin stop-domain doesn't work anymore! The returned error is "CLI306 Warning - server is not running" and I have to kill the process.



 Comments   
Comment by Anissa Lam [ 24/Jan/12 ]

I am not quite sure what exactly you mean.

The issue about redirecting, " if the request cames from host2:4848 the admin-listener redirect it to __asadmin (default virtual server) because there's no host2 that listen to 4848." and

"asadmin stop-domain doesn't work anymore! The returned error is "CLI306 Warning - server is not running" and I have to kill the process."

is not in the admin console code.

I am transferring to "admin" for evaluation.

Comment by Tom Mueller [ 24/Jan/12 ]

Please clarify what you mean by "from host". Do you really mean this?

You have three DNS names for your server, host1, host2, and host3, which all resolve to the same IP address.
And you want to configure the server so that the URL http://host1:4848/ accesses the admin console, but http://host2:4848/ and http://host3:4848/ does not.

Is that right?

Anissa, please provide information as to how to achieve the desired configuration with the admin console without breaking other parts of the system. The reference to stop-domain not working is a result of a misconfiguration of the virtual server and does not mean that there is something wrong with stop-domain.

Comment by Alfio Gloria [ 25/Jan/12 ]

Please clarify what you mean by "from host". Do you really mean this?

You have three DNS names for your server, host1, host2, and host3, which all resolve to the same IP address.
And you want to configure the server so that the URL http://host1:4848/ accesses the admin console, but http://host2:4848/ and http://host3:4848/ does not.

Is that right?

Yes, it's right.

to reproduce the issue:

  • create a new domain from scratch
  • start the domain
  • enter in admin console
  • change admin-listener default server from '__asadmin' to 'server' (pressing save button an RuntimeException is thrown and printed to screen without stack trace or details, however changes are saved);
  • stop the domain;
  • restart the domain;
  • stop the domain: ERROR
Comment by Anissa Lam [ 12/Feb/13 ]

Fix by HCF (3/25)

Comment by Anissa Lam [ 12/Feb/13 ]

Issues need to be addressed before 4.0 HCF (3/25)

Comment by Anissa Lam [ 19/Mar/13 ]

I am not sure if one is allowed to change the admin-listener's default-virtual-server to "server".
CLI cannot handle the case following the steps about.
After changing the default-virtual-server, even though start-domain says starts successfully, it doesn't.

Here is what i did following the steps:

{{
~/Awork/GF/glassfish4/glassfish/bin 26)
~/Awork/GF/glassfish4/glassfish/bin 26) asadmin create-domain --adminport 54848 domain5
Enter admin user name [Enter to accept default "admin" / no password]>
Using port 54848 for Admin.
Default port 8080 for HTTP Instance is in use. Using 65320
Default port 7676 for JMS is in use. Using 65321
Default port 3700 for IIOP is in use. Using 65322
Default port 8181 for HTTP_SSL is in use. Using 65323
Using default port 3820 for IIOP_SSL.
Using default port 3920 for IIOP_MUTUALAUTH.
Default port 8686 for JMX_ADMIN is in use. Using 65324
Using default port 6666 for OSGI_SHELL.
Using default port 9009 for JAVA_DEBUGGER.
Distinguished Name of the self-signed X.509 Server Certificate is:
[CN=macau2.us.oracle.com,OU=GlassFish,O=Oracle Corporation,L=Santa Clara,ST=California,C=US]
Distinguished Name of the self-signed X.509 Server Certificate is:
[CN=macau2.us.oracle.com-instance,OU=GlassFish,O=Oracle Corporation,L=Santa Clara,ST=California,C=US]
Domain domain5 created.
Domain domain5 admin port is 54,848.
Domain domain5 allows admin login as user "admin" with no password.
Command create-domain executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 27)
~/Awork/GF/glassfish4/glassfish/bin 27)
~/Awork/GF/glassfish4/glassfish/bin 27) asadmin start-domain domain5
Waiting for domain5 to start ........
Successfully started the domain : domain5
domain Location: /Users/anilam/Awork/GF/glassfish4/glassfish/domains/domain5
Log File: /Users/anilam/Awork/GF/glassfish4/glassfish/domains/domain5/logs/server.log
Admin Port: 54848
Command start-domain executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 28)
~/Awork/GF/glassfish4/glassfish/bin 28)
~/Awork/GF/glassfish4/glassfish/bin 28) asadmin --port 54848 get configs.config.server-config.network-config.protocols.protocol.admin-listener.http.default-virtual-server
configs.config.server-config.network-config.protocols.protocol.admin-listener.http.default-virtual-server=__asadmin
Command get executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 29)
~/Awork/GF/glassfish4/glassfish/bin 29) asadmin --port 54848 set configs.config.server-config.network-config.protocols.protocol.admin-listener.http.default-virtual-server=server
configs.config.server-config.network-config.protocols.protocol.admin-listener.http.default-virtual-server=server
Command set executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 30)
~/Awork/GF/glassfish4/glassfish/bin 30) asadmin list-domains
domain1 running
domain2 not running
domain3 not running
domain5 running
Command list-domains executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 31)
~/Awork/GF/glassfish4/glassfish/bin 31) asadmin stop-domain domain5
Waiting for the domain to stop .
Command stop-domain executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 32)
~/Awork/GF/glassfish4/glassfish/bin 32) asadmin list-domains
domain1 running
domain2 not running
domain3 not running
domain5 not running
Command list-domains executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 33)
~/Awork/GF/glassfish4/glassfish/bin 33) asadmin start-domain domain5
Waiting for domain5 to start .....
Successfully started the domain : domain5
domain Location: /Users/anilam/Awork/GF/glassfish4/glassfish/domains/domain5
Log File: /Users/anilam/Awork/GF/glassfish4/glassfish/domains/domain5/logs/server.log
Admin Port: 54848
Command start-domain executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 34)
~/Awork/GF/glassfish4/glassfish/bin 34)
~/Awork/GF/glassfish4/glassfish/bin 34) asadmin list-domains
domain1 running
domain2 not running
domain3 not running
domain5 not running
Command list-domains executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 35)
~/Awork/GF/glassfish4/glassfish/bin 35)
~/Awork/GF/glassfish4/glassfish/bin 35) asadmin --port 54848 get config.*
Not Found
Command get failed.
~/Awork/GF/glassfish4/glassfish/bin 36)
~/Awork/GF/glassfish4/glassfish/bin 36)
~/Awork/GF/glassfish4/glassfish/bin 36) asadmin --port 54848 stop-domain domain5
CLI306: Warning - The server located at /Users/anilam/Awork/GF/glassfish4/glassfish/domains/domain5 is not running.
Command stop-domain executed successfully.
~/Awork/GF/glassfish4/glassfish/bin 37)

}}

Cannot get to REST API and thus cannot get to console also.
Transferring to 'admin' to see what is the expected behavior when someone change the default-virtual-server to "server" for admin-listener.

Comment by Tom Mueller [ 19/Mar/13 ]

The expected behavior if you default-virtual-server for the admin-listener to something other than __asadmin is exactly as you are seeing. Any command submitted from the client will cease to function, including stop-domain and list-domains as you have seen in the example.

It isn't clear that there is a bug here.

Do host1, host2, and host3 resolve to the same IP address or do the resolve to different IP addresses for 3 interfaces on the same server? If it is the latter, it may be sufficient to just add address="host1" to the network-listener element for the admin-listener, as in:

network-listener port="4848" address="host1" protocol="admin-listener" transport="tcp" name="admin-listener" thread-pool="admin-thread-pool"></network-listener>

Once you do this, it will be necessary to use the "--host host1" option on all asadmin commands so that they are directed to the right interface.

However, if all three hostnames resolve to the same IP address, then I expect that this will not work.

Comment by Alfio Gloria [ 21/Mar/13 ]

I'll try to define this issue better.

I've only one public ip address and three domains, i.e. www.domain1.com, www.domain2.com, www.centraldomain.com

I want to access admin console only from http://www.centraldomanin.com:4848

As far as I understand Glassfish identifies the right virtual server based on Host HTTP header and port (or better, listener), if it does not find this combination it redirects to a default virtual server (__asadmin in this case).

If I try to access to http://www.domain1.com:4848 I can see the admin console even if this virtual host has no admin-listener! It seems very odd, but has its logic: Glassfish does not find any combination www.domain1.com and 4848 thus redirect me to the __asadmin virtual server.

My first idea was to change the default virtual server for admin-listener to one that does not contain anything, so I obtain nothing if I access from http://www.domain1.com:4848 but I can get the admin console from http://www.centraldomanin.com:4848

This method works fine, the only problem I get is that I can't stop the server.

As a side note, I think you should rethink how listeners work, because if I set http-listener-1 for a virtual server I want it listen only on that listener. Glassfish should reject the request if it find the virtual server but that virtual server does not listen on the requested port.

Comment by Tom Mueller [ 21/Mar/13 ]

I expect that not only does "stop-domain" not work, other asadmin commands do not work either, right?

Have you tried running:

asadmin --host www.centraldomain.com stop-domain

when you have it setup based on your first idea? If you don't specify a host, it tries to use localhost, and it may be that commands are not being accepted for localhost.

Comment by Alfio Gloria [ 21/Mar/13 ]

Hi Tom, now I'm starting to understand how asadmin cli works under the hood. Anyway using --host does not resolve the issue.

Here the steps you can use to reproduce the problem without using admin console:

asadmin create-domain testdomain
asadmin start-domain testdomain
asadmin> set server.http-service.virtual-server.__asadmin.hosts=myhost
asadmin> set server.network-config.protocols.protocol.admin-listener.http.default-virtual-server=server
asadmin stop-domain testdomain
asadmin start-domain testdomain

asadmin --host myhost stop-domain
[Fatal Error] :38:21: Element type "div" must be followed by either attribute specifications, ">" or "/>".
CLI307 Warning - remote server is not running, unable to force it to stop.
Try running stop-domain on the remote server.
Command stop-domain executed successfully.

Even though the last line states that the domain is stopped, it is not.
Furthermore I can see the admin console form http://myhost:4848 but I can't access because it does not recognize username and password correctly. As far as I remember I didn't have this problem in 3.1.1

Comment by Amy Roh [ 22/Mar/13 ]

Alfio,

You can use virtual server properties such as allowRemoteAddress, denyRemoteAddress, allowRemoteHost, or denyRemoteHost for __asadmin virtual server to restrict the access to the admin console. You can find more info on these virtual server properties from http://docs.oracle.com/cd/E19226-01/820-7694/abhfg/index.html

For example, if you want to limit access to admin console only from centraldomain, you can use

asadmin set server.http-service.virtual-server.__asadmin.property.allowRemoteHost=centraldomain

and restart the server for changes to take effect.

I just confirmed that it works as expected in the trunk. Please let us know if it works for you so we can close the issue.

Amy

Comment by Alfio Gloria [ 22/Mar/13 ]

Amy,

my apologies for the confusion. As you can see I'm not mother tongue

The allowRemoteAddress property restricts the access based on the client's host (am I wrong?). What I'm trying to do is that if a user types http://www.centraldomain.com:4848 in his browser he can see the admin console, but if he types http://www.domain1.com:4848 he can't.

Anyway I'm investigating why the --host solution proposed by Tom does not work. As soon as I have some news I'll let you know.

Alfio

Comment by Amy Roh [ 25/Mar/13 ]

The allowRemoteHost property for virtual server will let you allow users only on given host. In general, you shouldn't change the default virtual sever for admin-listener since GlassFish handles __asadmin virtual server and admin-listener differently for specific admin purposes.

You do need to enable DNS lookup for admin-listener if you want to compare host names and not ip addresses.

Can you try the following?

[1] Enable DNS lookup for admin-listener

asadmin set configs.config.server-config.network-config.protocols.protocol.admin-listener.http.dns-lookup-enabled=true

[2] Allow only remote host centraldomain

asadmin set server.http-service.virtual-server.__asadmin.property.allowRemoteHost=centraldomain

[3] Restart

[4] Try to access centraldomain:4848 and domain1:4848. The latter should no longer work.

Comment by Alfio Gloria [ 25/Mar/13 ]

@Amy

I've tried your solution but it does not work and it can't since the allowRemoteHost checks the client's hostname as you can see in the link you have posted:

"allowRemotedHost specifies a comma-separated list of regular expression patterns that the remote client's hostname (as returned by [java.net.]Socket.getInetAddress().getHostName()) is compared to. If this property is specified, the remote hostname must match for this request to be accepted."

The virtual server host is sent by the "Host" HTTP Header, so I don't need to enable DNS lookup.

Comment by Alfio Gloria [ 25/Mar/13 ]

@Tom

I did many tests without results using --host option.

Here the steps:

asadmin create-domain --adminport 4848 testdomain

asadmin start-domain testdomain

      • access the admin console using the browser otherwise does not work.

asadmin enable-secure-admin

asadmin set server.http-service.virtual-server.__asadmin.hosts=myhost

asadmin set server.network-config.protocols.protocol.sec-admin-listener.http.default-virtual-server=server

asadmin set configs.config.server-config.security-service.message-security-config.HttpServlet.provider-config.GFConsoleAuthModule.property.restAuthURL=https://myhost:\$

{ADMIN_LISTENER_PORT}

/management/sessions

asadmin stop-domain testdomain
asadmin start-domain testdomain

asadmin --host myhost stop-domain


In this way I can access the admin console only for http://myhost:4848 but:

1) It takes 2-3 minutes to show me the login page;
2) I can't log in
3) I can't stop the server

I can't figure out where the problem is, since I have no idea how admin console works internally.
I think it's easier to block the incoming requests externally before they are processed by Glassfish.

Comment by Alfio Gloria [ 25/Mar/13 ]

this is what I get during stop-domain:

[#|2013-03-25T10:13:58.519+0100|SEVERE|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=160;_ThreadName=Thread-2;|com.sun.jersey.api.client.ClientHandlerException: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:149)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.filter.CsrfProtectionFilter.handle(CsrfProtectionFilter.java:97)
at com.sun.jersey.api.client.Client.handle(Client.java:648)
at com.sun.jersey.api.client.WebResource.handle(WebResource.java:670)
at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74)
at com.sun.jersey.api.client.WebResource$Builder.get(WebResource.java:503)
at org.glassfish.admingui.common.util.RestUtil.get(RestUtil.java:755)
at org.glassfish.admingui.common.util.RestUtil.restRequest(RestUtil.java:191)
at org.glassfish.admingui.common.handlers.RestApiHandlers.restRequest(RestApiHandlers.java:223)
at sun.reflect.GeneratedMethodAccessor61.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.sun.jsftemplating.layout.descriptors.handler.Handler.invoke(Handler.java:442)
at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:420)
at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:394)
at com.sun.jsftemplating.layout.descriptors.LayoutComponent.beforeCreate(LayoutComponent.java:348)
at com.sun.jsftemplating.layout.descriptors.LayoutComponent.getChild(LayoutComponent.java:288)
at com.sun.jsftemplating.layout.LayoutViewHandler.buildUIComponentTree(LayoutViewHandler.java:556)
at com.sun.jsftemplating.layout.LayoutViewHandler.createView(LayoutViewHandler.java:255)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:247)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:116)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1550)
at org.apache.catalina.core.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:809)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:671)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:505)
at org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:476)
at org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:355)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:305)
at org.glassfish.admingui.common.security.AdminConsoleAuthModule.validateRequest(AdminConsoleAuthModule.java:232)
at com.sun.enterprise.security.jmac.config.GFServerConfigProvider$GFServerAuthContext.validateRequest(GFServerConfigProvider.java:1171)
at com.sun.web.security.RealmAdapter.validate(RealmAdapter.java:1452)
at com.sun.web.security.RealmAdapter.invokeAuthenticateDelegate(RealmAdapter.java:1330)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:551)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:623)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
at org.apache.catalina.conne|#]

[#|2013-03-25T10:13:58.520+0100|SEVERE|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=160;_ThreadName=Thread-2;|ctor.CoyoteAdapter.doService(CoyoteAdapter.java:331)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:722)
Caused by: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:946)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1339)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1323)
at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:515)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1299)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)
at com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke(URLConnectionClientHandler.java:240)
at com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle(URLConnectionClientHandler.java:147)
... 105 more
Caused by: java.io.EOFException: SSL peer shut down incorrectly
at sun.security.ssl.InputRecord.read(InputRecord.java:482)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:927)
... 115 more

#]
Comment by Amy Roh [ 29/Mar/13 ]

I defined 'myhost1' and 'myhost2' as other names for localhost and tried the following.

1. Create a virtual server with --hosts myhost1

asadmin create-virtual-server --hosts myhost1 --networklisteners http-listener-1 myhost1

2. Deploy a webapp to myhost1

asadmin deploy --virtualservers myhost1 hello.war

http://localhost:8080/hello returns 404
http://myhost1:8080/hello returns hello page
http://myhost2:8080/hello returns 404

so --host is working as expected.

"__asadmin" and "admin-listener" are special virtual server and listener. Web container lets AdminConsoleAdapter handle any requests for the __asadmin virtual server. AdminConsoleAdapter needs to be modified to handle admin console access properly using __asadmin --hosts. Assign it to admin console.

Comment by Jason Lee [ 09/Apr/13 ]

Someone from the admin team needs to look at this. I'm not making progress on this quickly enough, and we have some REST issues that need addressing.

Comment by Jason Lee [ 15/Apr/13 ]

I might have a fix for this, but it's in web-core and web-glue. I have been unable to figure out how to handle in nucleus so far.

At any rate, the current approach requires a Valve, and a change to com.sun.enterprise.web.VirtualServer to add the support for configuring and adding it. It does have to check each request, though, if configured to do so, to make sure the request is valid, as, at the socket level, you bind to an IP, and not a host. In the scenario provided in this issue, these are virtual hosts on the same IP, so I don't think we can avoid doing this type of check.

I'll attach a diff for review, and start running some more extensive tests.

Comment by Jason Lee [ 15/Apr/13 ]

I forgot we can't attach files at the moment. Here's the diff:

Index: appserver/web/web-glue/src/main/java/com/sun/enterprise/web/WebContainer.java
===================================================================
--- appserver/web/web-glue/src/main/java/com/sun/enterprise/web/WebContainer.java	(revision 61425)
+++ appserver/web/web-glue/src/main/java/com/sun/enterprise/web/WebContainer.java	(working copy)
@@ -1619,6 +1619,7 @@
         vs.configureState();
         vs.configureRemoteAddressFilterValve();
         vs.configureRemoteHostFilterValve();
+        vs.configureServerNameFilterValve();
         vs.configureSingleSignOn(globalSSOEnabled, webContainerFeatureFactory, isSsoFailoverEnabled());
         vs.configureRedirect();
         vs.configureErrorPage();
Index: appserver/web/web-glue/src/main/java/com/sun/enterprise/web/VirtualServer.java
===================================================================
--- appserver/web/web-glue/src/main/java/com/sun/enterprise/web/VirtualServer.java	(revision 61425)
+++ appserver/web/web-glue/src/main/java/com/sun/enterprise/web/VirtualServer.java	(working copy)
@@ -85,7 +85,6 @@
 import org.glassfish.deployment.common.ApplicationConfigInfo;
 import org.glassfish.deployment.common.DeploymentContextImpl;
 import org.glassfish.deployment.common.DeploymentUtils;
-import org.glassfish.embeddable.CommandRunner;
 import org.glassfish.embeddable.GlassFishException;
 import org.glassfish.embeddable.web.Context;
 import org.glassfish.embeddable.web.ConfigException;
@@ -107,8 +106,6 @@
 import org.glassfish.grizzly.http.TransferEncoding;
 import org.glassfish.grizzly.http.util.HttpStatus;
 import org.glassfish.grizzly.filterchain.FilterChainContext;
-import org.glassfish.hk2.api.ServiceLocator;
-import org.glassfish.hk2.api.ServiceLocatorFactory;
 import org.glassfish.logging.annotation.LogMessageInfo;
 import org.glassfish.web.admin.monitor.RequestProbeProvider;
 import org.glassfish.web.deployment.archivist.WebArchivist;
@@ -139,9 +136,11 @@
 import java.util.logging.LogManager;
 import java.util.logging.Logger;
 import java.util.logging.LogRecord;
+import javax.servlet.ServletException;
 
 import javax.servlet.http.Cookie;
 import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 import javax.xml.parsers.DocumentBuilderFactory;
 import javax.xml.parsers.DocumentBuilder;
 import javax.xml.transform.OutputKeys;
@@ -149,6 +148,8 @@
 import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamResult;
+import org.apache.catalina.valves.RequestFilterValve;
+import static org.glassfish.web.valve.GlassFishValve.END_PIPELINE;
 
 import org.w3c.dom.*;
 
@@ -1834,6 +1835,50 @@
         }
     }
 
+    void configureServerNameFilterValve() {
+        String hosts = vsBean.getHosts();
+        if (!hosts.isEmpty()) {
+            ServerNameFilterValve  snv = new ServerNameFilterValve(hosts);
+            GlassFishValve[] valves = getValves();
+            for (int i=0; valves!=null && i<valves.length; i++) {
+                if (valves[i] instanceof ServerNameFilterValve) {
+                    removeValve(valves[i]);
+                    break;
+                }
+            }
+            addValve((GlassFishValve) snv);
+        }
+    }
+    
+    // TODO: Move to its own file if all tests pass and change is approved
+    private static class ServerNameFilterValve extends RequestFilterValve {
+        String[] hosts;
+        public ServerNameFilterValve(String hostString) {
+            if ((hostString != null) && !hostString.isEmpty()) {
+                String[] parts = hostString.split(",");
+                hosts = new String[parts.length];
+                for (int i = 0; i < parts.length; i++) {
+                    hosts[i] = parts[i].trim().toLowerCase(Locale.getDefault());
+                }
+            }
+        }
+
+        @Override
+        public int invoke(org.apache.catalina.Request request, org.apache.catalina.Response response) throws IOException, ServletException {
+            String serverName = request.getRequest().getServerName().toLowerCase(Locale.getDefault());
+            
+            for (String host: hosts) {
+                if (host.equals(serverName)) {
+                    return INVOKE_NEXT;
+                }
+            }
+                    
+            handleError(request, response, HttpServletResponse.SC_NOT_FOUND);
+            return END_PIPELINE;
+        }
+        
+    }
+    
     void addProbes(boolean globalAccessLoggingEnabled) {
 
         List<String> listenerList = StringUtils.parseStringList(
Index: appserver/web/web-core/src/main/java/org/apache/catalina/valves/RequestFilterValve.java
===================================================================
--- appserver/web/web-core/src/main/java/org/apache/catalina/valves/RequestFilterValve.java	(revision 61425)
+++ appserver/web/web-core/src/main/java/org/apache/catalina/valves/RequestFilterValve.java	(working copy)
@@ -360,7 +360,7 @@
         return END_PIPELINE;
     }
 
-    private void handleError(Request request, Response response, int statusCode)
+    protected void handleError(Request request, Response response, int statusCode)
             throws IOException {
 
         ServletRequest sreq = request.getRequest();
Comment by shreedhar_ganapathy [ 19/Apr/13 ]

Jason, Can you send the diff to the dev alias for faster resolution of this issue?

Comment by Jason Lee [ 19/Apr/13 ]

Done. "Diff for 18235"





[GLASSFISH-15739] avoid persisting attributes with empty ("") values in domain.xml Created: 28/Jan/11  Updated: 15/Feb/13

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 4.0
Fix Version/s: future release

Type: Bug Priority: Major
Reporter: Jagadish Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 3_1_x-exclude

 Description   

Please refer the following issues :
http://java.net/jira/browse/GLASSFISH-15435
http://java.net/jira/browse/GLASSFISH-15738

GLASSFISH-15435
"Issue seems to be due to the fact that "datasource-classname" is persisted by GUI as "" (empty) which is a non-null value.
When the pool configuration is persisted, driver-classname as well datasource-classname are non-empty.
By default, (most of the users) use datasource-classname and hence datasource-classname is considered here for determining actual resource-type.
Fix would be to check for empty string also."

Sample configuration : Create a jdbc-connection-pool with resource-type as java.sql.Driver

Refer the value for datasource-classname's value persisted in domain.xml as "" below :

<jdbc-connection-pool driver-classname="org.apache.derby.jdbc.ClientDriver" datasource-classname="" res-type="java.sql.Driver" description="" name="tt"></jdbc-connection-pool>

It looks like when an attribute is reset/set, it is set as "" by GUI/REST in domain.xml
This was not the case when using GUI in 3.0/3.0.1/2.x

The equivalent when done in CLI, does not persist the attribute with value "", instead it is reset as if the value is not defined (or default value is considered).

For the above configuration of jdbc-connection-pool named "tt" when set using CLI :
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

$GLASSFISH_HOME/bin/asadmin get server.resources.jdbc-connection-pool.tt.datasource-classname
server.resources.jdbc-connection-pool.tt.datasource-classname=
Command get executed successfully.

$GLASSFISH_HOME/bin/asadmin set server.resources.jdbc-connection-pool.tt.datasource-classname=""
server.resources.jdbc-connection-pool.tt.datasource-classname=
Command set executed successfully.

$GLASSFISH_HOME/bin/asadmin get server.resources.jdbc-connection-pool.tt.datasource-classname
remote failure: Dotted name path server.resources.jdbc-connection-pool.tt.datasource-classname not found.
Command get failed.
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Same issue is applicable for GLASSFISH-15738

Probably, GUI/REST need to evaluate it for all attributes in general.



 Comments   
Comment by sumasri [ 31/Mar/11 ]

This is not a specific JDBC issue.
If we send an empty value from GUI side, it is saving it as an empty value in domain.xml.
In CLI, if we send an empty value in set command, it removes the attribute from domain.xml, where it is not happening in GUI.
As per my understanding, this generic issue has to be taken care by REST module.
Hence, transferring it to REST team for initial evaluation. If there is anything needs to be done from GUI side, Please assign it back to me.

Comment by ludo [ 08/Apr/11 ]

I have a question:
What if the Admin user would really put an empty string via the UI?

It is clear that to support both use cases, the Admin GUI screens would need to be modified, no?

So I am not sure it is a rest only issue...
It is a generic case for any UI (Web, IDEs) when a user might have to enter different type of info on each field:

1/ No value (i.e null)
2/ an empty value (i.e "")
3/ a real value (i.e foo)
4/ a default value (prepopulated in the GUI)

Differentiating between 1 and 2 is necessary and cannot be deduced at the REST level imo.

Comment by Anissa Lam [ 08/Apr/11 ]

I thought it has been discussed before, there is no way to specify "" as an attribute value. Not for CLI/GUI/REST.

eg, <store-properties>, there is a "directory" attribute that doesn't have any default value.

If you do
%asadmin set configs.config.server-config.web-container.session-config.session-manager.store-properties.directory=""
configs.config.server-config.web-container.session-config.session-manager.store-properties.directory=
Command set executed successfully.

You will see that it actually will NOT write out "" to domain.xml.

in <session-properties>, there is a "session-timeout" attribute which defaults to "1800" Seconds.
And if you set it to "", it will mean removing it and which means get back to default.

%asadmin set configs.config.default-config.web-container.session-config.session-properties.timeout-in-seconds=""
configs.config.default-config.web-container.session-config.session-properties.timeout-in-seconds=
Command set executed successfully.

%asadmin get configs.config.default-config.web-container.session-config.session-propertiesconfigs.config.default-config.web-container.session-config.session-properties.timeout-in-seconds=1800
Command get executed successfully.

What i want to say is, there isn't a way to specify "" as attribute value, rather through CLI, GUI or REST.

In v2, backend recognize () as a special char sequence, and if you give it (), it will write out "" to domain.xml. This is how you specify "" value for property value using CLI or GUI. Maybe we should do something like this ??

Comment by Jagadish [ 11/Apr/11 ]

Yes, in order to support persisting "", we might have to re-introduce "()" equivalent in 3.0 also.
This should be done in the "config" layer or "dotted-names-set" command.

Comment by ludo [ 03/Jun/11 ]

Not for 3.1.1





[GLASSFISH-15731] properties/attributes changes result in multiple configuration events even if only one property/attribute is changed Created: 28/Jan/11  Updated: 15/Feb/13

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: None
Fix Version/s: future release

Type: Bug Priority: Major
Reporter: Jagadish Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Dependency
depends on GLASSFISH-15458 Rewrite asadmin set, get, list subcom... Open
Duplicate
is duplicated by GLASSFISH-16576 JVM option change leads to 13 concate... Closed
Tags: 3_1_2-exclude

 Description   

Refer the earlier discussions and issues :
http://java.net/jira/browse/GLASSFISH-15634
http://java.net/jira/browse/GLASSFISH-15618

Probably, part of the issue is fixed, but there are use-cases where I still see multiple events are raised ie., for only one property/attribute change, it is being persisted in domain.xml multiple times resulting in multiple events.

USE-CASE 1 :

1) Edit GLASSFISH_HOME/domains/domain1/config/logging.properties and add
the following entry and restart GlassFish:
LogStrings.org.glassfish.javaee.services.level=FINEST

2) Access GUI > jdbc-connection-pools > DerbyPool > Change the attribute in
Advanced tab
eg: set "validation atmost once period in seconds" to 10.
Press Save. This will result in multiple events in server.log

3) Similarly, access the properties tab of DerbyPool, change the
property "Password" to "APP1". This will also result in multiple events in server.log

[For CLI, it is single dotted-names-set command and hence there is only
one event in server.log ]

Same behavior is seen for "connector-connection-pool", changing "resource-adapter-config" etc.,

With RC builds being made, marking this issue for 3.2 so that it is addressed.



 Comments   
Comment by Jason Lee [ 05/Apr/11 ]

Currently, the set command persists each property in its own transaction. The REST interface persists everything it is sent, so when we pass this block of data to the set command, multiple commits are made. Once the rewrite is finished, this should be much better. I'm going to add that admin issue as a blocker for this, and we'll test once that's done to make sure the situation has improved.





[GLASSFISH-16669] Importing a SSL signed certificate from the Admin Console From a Certificate On the Server Created: 17/May/11  Updated: 17/May/11

Status: Open
Project: glassfish
Component/s: admin, admin_gui, rest-interface
Affects Version/s: None
Fix Version/s: future release

Type: New Feature Priority: Major
Reporter: LocusAsaf Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 3_1-next

 Description   

Loading a SSL certificate into Glassfish is difficult right now. The instructions in the Glassfish documentation are not very clear and there is a lot of different literature online that differs from it, which makes things even more confusing. It would be great if you could load a certificate into a domain directly from the console (by choosing the signed certificate file from your machine) and then assign it to be used by that domain.



 Comments   
Comment by Jason Lee [ 17/May/11 ]

This is an RFE the user and I discussed on IRC to be considered in the GlassFish 4 timeframe.





[GLASSFISH-20347] Provide default value for all attributes of the config bean without requiring the instance be created first. Created: 18/Apr/13  Updated: 21/Sep/15

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 4.0_b84_RC1
Fix Version/s: 4.1.1

Type: New Feature Priority: Major
Reporter: Anissa Lam Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to GLASSFISH-20192 ADMINGUI : Load default does not chan... Resolved

 Description   

This is related to GLASSFISH-20192.
REST should be able to provide the default value just by given the ConfigBean type, eg. jdbc-resource, thread-pool, virtual-server etc.
But currently unless this attribute is one of the create command param, it cannot do that.
The limitation is that not all default value is available unless the instance is created first.

Want to request REST to provide a way to give all the default value of any attributes without requiring:
1. the attribute be one of the params for create command
2. the resource has to be created first to be able to get those default value.






[GLASSFISH-20536] Intermittent failure in nucleus-admin-devtest job due to ReST jobs test failure Created: 15/May/13  Updated: 21/Sep/15

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 4.0_b88_RC4
Fix Version/s: 4.1.1

Type: Bug Priority: Major
Reporter: Tom Mueller Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There is an intermittent failure in the nucleus admin devtest job that results in the following failed tests:

Failed tests: testGetJob(org.glassfish.nucleus.admin.rest.JobsResourceTest): MessageBodyReader not found for media type=text/html; charset=UTF-8, type=class org.codehaus.jettison.json.JSONObject, genericType=class org.codehaus.jettison.json.JSONObject.
testJobsListing(org.glassfish.nucleus.admin.rest.JobsResourceTest): expected:<true> but was:<false>

A build with this failure is here:
http://hudson-sca.us.oracle.com/view/GF%204.0/job/nucleus-admin-devtests-4.0/21/

This build has been kept forever so that it will not be deleted.






classloader error in glassfish3.1.2.2 (GLASSFISH-20212)

[GLASSFISH-20328] classloader error in glassfish4.0b23 Created: 17/Apr/13  Updated: 01/Jan/15

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 4.0_b23
Fix Version/s: None

Type: Sub-task Priority: Major
Reporter: wizard.liyd Assignee: Jason Lee
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I deploy the web application On the GlassFish 4.0, then, restart glassfish server and access http://localhost:4848/, error as follows:

[2013-04-16T09:43:17.996+0800] [glassfish 4.0] [WARNING] [] [javax.enterprise.web.core] [tid: _ThreadID=40 _ThreadName=admin-listener(1)] [timeMillis: 1366076597996] [levelValue: 900] [[
Servlet.service() for servlet FacesServlet threw exception
java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder;
at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
at org.glassfish.jersey.client.JerseyWebTarget.<init>(JerseyWebTarget.java:72)
at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:180)
at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:69)
at org.glassfish.admingui.common.util.RestUtil.get(RestUtil.java:852)
at org.glassfish.admingui.common.util.RestUtil.restRequest(RestUtil.java:209)
at org.glassfish.admingui.common.handlers.RestApiHandlers.restRequest(RestApiHandlers.java:219)
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 com.sun.jsftemplating.layout.descriptors.handler.Handler.invoke(Handler.java:442)
at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:420)
at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:394)
at com.sun.jsftemplating.layout.descriptors.LayoutComponent.beforeCreate(LayoutComponent.java:348)
at com.sun.jsftemplating.layout.descriptors.LayoutComponent.getChild(LayoutComponent.java:288)
at com.sun.jsftemplating.layout.LayoutViewHandler.buildUIComponentTree(LayoutViewHandler.java:556)
at com.sun.jsftemplating.layout.LayoutViewHandler.createView(LayoutViewHandler.java:255)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:254)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:121)
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.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:875)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:739)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:575)
at org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:546)
at org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:428)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:378)
at org.glassfish.admingui.common.security.AdminConsoleAuthModule.validateRequest(AdminConsoleAuthModule.java:238)
at com.sun.enterprise.security.jmac.config.GFServerConfigProvider$GFServerAuthContext.validateRequest(GFServerConfigProvider.java:1175)
at com.sun.web.security.RealmAdapter.validate(RealmAdapter.java:1627)
at com.sun.web.security.RealmAdapter.invokeAuthenticateDelegate(RealmAdapter.java:1494)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:585)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:702)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)
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:722)
]]

and access http://localhost:4848/management/domain, error as follows:
[2013-04-16T09:50:59.010+0800] [glassfish 4.0] [INFO] [NCLS-REST-00003] [javax.enterprise.admin.rest] [tid: _ThreadID=43 _ThreadName=admin-listener(4)] [timeMillis: 1366077059010] [levelValue: 800] [[
An error occurred while processing the request. Please see the server logs for details.
org.glassfish.jersey.server.ContainerException: java.lang.AbstractMethodError: javax.ws.rs.core.Response.getStatusInfo()Ljavax/ws/rs/core/Response$StatusType;
at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer$ResponseWriter.rethrow(GrizzlyHttpContainer.java:274)
at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer$ResponseWriter.failure(GrizzlyHttpContainer.java:256)
at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:343)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:223)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:231)
at org.glassfish.jersey.internal.Errors$1.call(Errors.java:227)
at org.glassfish.jersey.internal.Errors.process(Errors.java:275)
at org.glassfish.jersey.internal.Errors.process(Errors.java:257)
at org.glassfish.jersey.internal.Errors.process(Errors.java:227)
at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317)
at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:191)
at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:819)
at org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:325)
at org.glassfish.admin.rest.adapter.RestAdapter$2.service(RestAdapter.java:318)
at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:181)
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:722)
Caused by: java.lang.AbstractMethodError: javax.ws.rs.core.Response.getStatusInfo()Ljavax/ws/rs/core/Response$StatusType;
at org.glassfish.jersey.message.internal.OutboundJaxrsResponse.from(OutboundJaxrsResponse.java:97)
at org.glassfish.jersey.server.ContainerResponse.<init>(ContainerResponse.java:88)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:341)
at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:101)
at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:217)
... 29 more
]]



 Comments   
Comment by wizard.liyd [ 17/Apr/13 ]

hi, thanks for your help!
I deploy the web application On the Glassfish 3.1.2.2, then restart glassfish server(must restart) and debug glassfish source code, tracking to getElementLink(UriInfo uriInfo, String elementName) in ProviderUtil.java when access http://localhost:4848/management/domain/resources/jdbc-resource, uriInfo.getRequestUriBuilder()'s Implementation class isn't com.sun.jersey.api.uri.UriBuilderImpl but is org.apache.cxf.jaxrs.impl.UriBuilderImpl(there is a cxf-rt-frontend-jaxrs-2.2.5.jar in application/WEB-INFO/lib).

The org.apache.cxf.jaxrs.impl.UriBuilderImpl is in the cxf-rt-frontend-jaxrs-2.2.5.jar, cxf-rt-frontend-jaxrs-2.2.5.jar belong to applicatioin layer. The application class loader is lower in the hierarchy. But in this case, the class loader first load cxf-rt-frontend-jaxrs-2.2.5.jar than jersey-core.jar(the jersey-core.jar is in glassfish3.1.2.2\glassfish\modules).

And, When I access the http://localhost:4848/management/domain/resources/jdbc-resource, the class loader loaded the UriBuildImpl class of application layer, it's unresonable. As a matter of fact, the class loader should be load the UriBuildImpl class of jersey-cor.jar.

Comment by edwardbiton [ 01/Jan/15 ]

Not sure if this is still active, but I experienced the same issue.
Scenario:
Start Glassfish 4.1
Access http://localhost:4848/ - works fine
Deploy Jenkins - no issues
Deploy Artifactory - no issues
Restart glassfish
Access http://localhost:4848/ - does not show up

Glassfish logs shows the following error.

[2015-01-01T14:18:02.255-0800] [glassfish 4.1] [WARNING] [] [javax.enterprise.web.core] [tid: _ThreadID=47 _ThreadName=admin-listener(3)] [timeMillis: 1420150682255] [levelValue: 900] [[
Servlet.service() for servlet FacesServlet threw exception
java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder;
at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
at org.glassfish.jersey.client.JerseyWebTarget.<init>(JerseyWebTarget.java:71)
at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:177)
at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:68)
at org.glassfish.admingui.common.util.RestUtil.get(RestUtil.java:862)
at org.glassfish.admingui.common.util.RestUtil.restRequest(RestUtil.java:209)
at org.glassfish.admingui.common.handlers.RestApiHandlers.restRequest(RestApiHandlers.java:224)
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:606)
at com.sun.jsftemplating.layout.descriptors.handler.Handler.invoke(Handler.java:442)
at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:420)
at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:394)
at com.sun.jsftemplating.layout.descriptors.LayoutComponent.beforeCreate(LayoutComponent.java:348)
at com.sun.jsftemplating.layout.descriptors.LayoutComponent.getChild(LayoutComponent.java:288)
at com.sun.jsftemplating.layout.LayoutViewHandler.buildUIComponentTree(LayoutViewHandler.java:556)
at com.sun.jsftemplating.layout.LayoutViewHandler.createView(LayoutViewHandler.java:255)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:254)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:121)
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.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:875)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:739)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:575)
at org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:546)
at org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:428)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:378)
at org.glassfish.admingui.common.security.AdminConsoleAuthModule.validateRequest(AdminConsoleAuthModule.java:224)
at com.sun.enterprise.security.jmac.config.GFServerConfigProvider$GFServerAuthContext.validateRequest(GFServerConfigProvider.java:1175)
at com.sun.web.security.RealmAdapter.validate(RealmAdapter.java:1654)
at com.sun.web.security.RealmAdapter.invokeAuthenticateDelegate(RealmAdapter.java:1521)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:606)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:702)
at org.apache.catalina.core.StandardPipeline.doChainInvoke(StandardPipeline.java:678)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
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.portunif.PUFilter.handleRead(PUFilter.java:231)
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.portunif.PUFilter.handleRead(PUFilter.java:231)
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)
]]

[2015-01-01T14:18:02.451-0800] [glassfish 4.1] [WARNING] [] [javax.enterprise.web.core] [tid: _ThreadID=47 _ThreadName=admin-listener(3)] [timeMillis: 1420150682451] [levelValue: 900] [[
Servlet.service() for servlet FacesServlet threw exception
java.lang.AbstractMethodError: javax.ws.rs.core.UriBuilder.uri(Ljava/lang/String;)Ljavax/ws/rs/core/UriBuilder;
at javax.ws.rs.core.UriBuilder.fromUri(UriBuilder.java:119)
at org.glassfish.jersey.client.JerseyWebTarget.<init>(JerseyWebTarget.java:71)
at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:177)
at org.glassfish.jersey.client.JerseyClient.target(JerseyClient.java:68)
at org.glassfish.admingui.common.util.RestUtil.get(RestUtil.java:862)
at org.glassfish.admingui.common.util.RestUtil.restRequest(RestUtil.java:209)
at org.glassfish.admingui.common.handlers.RestApiHandlers.restRequest(RestApiHandlers.java:224)
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:606)
at com.sun.jsftemplating.layout.descriptors.handler.Handler.invoke(Handler.java:442)
at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:420)
at com.sun.jsftemplating.layout.descriptors.LayoutElementBase.dispatchHandlers(LayoutElementBase.java:394)
at com.sun.jsftemplating.layout.descriptors.LayoutComponent.beforeCreate(LayoutComponent.java:348)
at com.sun.jsftemplating.layout.descriptors.LayoutComponent.getChild(LayoutComponent.java:288)
at com.sun.jsftemplating.layout.LayoutViewHandler.buildUIComponentTree(LayoutViewHandler.java:556)
at com.sun.jsftemplating.layout.LayoutViewHandler.createView(LayoutViewHandler.java:255)
at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:254)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:121)
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.ApplicationDispatcher.doInvoke(ApplicationDispatcher.java:875)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:739)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:575)
at org.apache.catalina.core.ApplicationDispatcher.doDispatch(ApplicationDispatcher.java:546)
at org.apache.catalina.core.ApplicationDispatcher.dispatch(ApplicationDispatcher.java:428)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:378)
at org.glassfish.admingui.common.security.AdminConsoleAuthModule.validateRequest(AdminConsoleAuthModule.java:224)
at com.sun.enterprise.security.jmac.config.GFServerConfigProvider$GFServerAuthContext.validateRequest(GFServerConfigProvider.java:1175)
at com.sun.web.security.RealmAdapter.validate(RealmAdapter.java:1654)
at com.sun.web.security.RealmAdapter.invokeAuthenticateDelegate(RealmAdapter.java:1521)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:606)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:702)
at org.apache.catalina.core.StandardPipeline.doChainInvoke(StandardPipeline.java:678)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)
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.portunif.PUFilter.handleRead(PUFilter.java:231)
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.portunif.PUFilter.handleRead(PUFilter.java:231)
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)
]]





[GLASSFISH-14559] Always need to click twice on prompt Created: 09/Nov/10  Updated: 07/Dec/10

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 3.1
Fix Version/s: future release

Type: Bug Priority: Minor
Reporter: lidiam Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Windows XP
Platform: PC


Issuezilla Id: 14,559
Tags: 3_1-exclude

 Description   

build: ogs-3.1-b28-11_09_2010.zip

For every prompt in Admin Console I have to click OK twice for it to register
the click. This is in Safari 5.0.2 on Windows XP. For example, deploy an
application and then click undeploy. An "are you sure" prompt will show. The
first click on OK button is not registered and I have to click again.



 Comments   
Comment by Jason Lee [ 10/Nov/10 ]

Safari (and Chrome, also WebKit-based) on the Mac are not affected, nor is Firefox. This may be some odd Safari on Windows issue. At this point, I'm not sure it's Console issue. Setting to MS8 for the time being.

Comment by Nazrul [ 11/Nov/10 ]

Changing target milestone from 3.1_ms08 to not determined

Comment by Jason Lee [ 03/Dec/10 ]

I can confirm this issue on Safari on Windows, but it is not reproducible in any other major browser on Windows (FF, Chrome, IE). It seems that the prompt dialog box has focus issues (i.e., you have to click once to give the window focus, then click again to perform the action). Short of writing our own modal dialog box (something I'm not sure we want to do this close to the mile stone), I don't know that there's anything we can do about this issue.

Comment by Jason Lee [ 07/Dec/10 ]

As I said, there's little we can do about this directly. We can work around it by using a custom dialog (ie., javascript+html+css), but that likely won't happen for 3.1. I'm going to target this for a future release and exclude it from 3.1. After 3.1 ships, we can revisit this issue.





[GLASSFISH-10613] [usability]need to inform user when update tool is downloading components Created: 27/Oct/09  Updated: 08/Mar/11

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: V3
Fix Version/s: future release

Type: Improvement Priority: Minor
Reporter: yifeng1 Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: SunOS
Platform: Sun


Issuezilla Id: 10,613
Tags: 3_1-exclude

 Description   

promoted build : b69 glassfish-v3-b69.zip

browser: firefox 3

platform: open solaris

tool: orca screen reader on solaris

when download add-ons, when user press install, the push button becomes
process...., screen reader read correctly, however, it is a silence when the
add-on is being downloaded.

I open as enhancement, we should provide audio message saying "please wait..."
since the download can be quite a long time depending on the package size and
network speed.






[GLASSFISH-10575] [usability] hidden links to common task page Created: 26/Oct/09  Updated: 08/Mar/11

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: V3
Fix Version/s: future release

Type: Bug Priority: Minor
Reporter: yifeng1 Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 10,575
Tags: 3_1-exclude

 Description   

promoted build : b69 glassfish-v3-b69.zip

browser: firefox 3

platform: open solaris

tool: orca screen reader on solaris

on the right side of the GUI, there are lots of hidden links point to common
task page.

for example, under configuration-->jvm settings

under the general tab,

if user continues press tab key, orca reads "common task link" at two places.

one under general tab and above JVM General Settings

another one below load defaults push button but above Java Home text image

if user press enter, GUI goes to the common task page

This is very misleading since visually those links do not exist.

This is a regression from v2.1.1



 Comments   
Comment by yifeng1 [ 26/Oct/09 ]

this is a common problem with several pages.

Comment by Jason Lee [ 26/Oct/09 ]

This is a usability issue and not 508. Updating summary.

Comment by Anissa Lam [ 26/Oct/09 ]

Add [Usability] to summary so we can easily identity the bugs filed when doing
508 testing.

Comment by Jason Lee [ 02/Nov/09 ]

Can you help identify which links you're talking about, with, say, either the id
of the link if it has one or the HTML of link? I'm not sure what links you're
referring to.

(Reassigning to reporter for more information).

Comment by yifeng1 [ 02/Nov/09 ]

Jason, with promoted build69, if you are on the jvm general page, there are
hidden links for common task link, user didn't see it but screen reader will
read it.

Now I have Nov 1 nightly, before the left side tree node you probably add a link
says "skip navigation link", on the right side "frame", there is a link says
"content tab link".

I think due to many changes recently, the common task hidden link didn't spell
out anymore.

please confirm, and mark as fixed. thanks

Comment by Jason Lee [ 03/Nov/09 ]

Per discussion with Nazrul, deferring to the next release.

Comment by Jason Lee [ 06/Oct/10 ]

Postponing.





[GLASSFISH-14074] Tree: nodes tuner image is incorrect somethings Created: 18/Oct/10  Updated: 13/Dec/10

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 3.1
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Anissa Lam Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 14,074
Tags: 3_1-exclude

 Description   

This is more a P4. But i file as P3 to see if we can get this in for 3.1
Please work on other P3 first.
I see this in several place, one of the sequence to sure reproduce this:

Step to reproduce:

  • expand JDBC node
  • click on JDBC Resources node
  • click on the tuner image to expand the JDBC Resources node.

The tuner image is point down, showing the jdbc/_default and jdbc/_TimerPool,
which is correct.

  • select jdbc/_TimerPool
  • click on 'JDBC Resources node again. Notice that the tuner image has changed
    to 'pointing right', but this node is actually expanded. The tuner image
    shouldn't change at all.

If you cannot reproduce with the above sequence, click around other nodes
randomly, and you will see this.



 Comments   
Comment by Nazrul [ 11/Nov/10 ]

Changing target milestone from 3.1_ms08 to not determined

Comment by Anissa Lam [ 20/Nov/10 ]

Change to P4.





[GLASSFISH-13958] [508]cannot select Database Vendor in NewJDBC ConnectionPool Page Created: 13/Oct/10  Updated: 23/Feb/15

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 3.1
Fix Version/s: future release

Type: Bug Priority: Minor
Reporter: shaline Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Issuezilla Id: 13,958
Tags: 3_1-508, 3_1_2-508, 3_1_2-exclude

 Description   

Build Used: GFV3.1 promoted build23.

Browser Used : firefox 3.6.
Os: Windows XP

In the New JDBC Connection Pool window, we cannot select the Database Vendor
using the Keyboard shortkeys. We can navigate through the list of the vendors
using the TAB+up/down arrow keys. But when we select the vendor, and pressing
Tab key to go to "NEXT" button, the selection gets erased, and the Database
Vendor field goes empty.

Use Tab key to navigate to "New JDBC Connection Pool Page" .
Use Tab key to enter the pool name, and Resource Type values.
Use Tab to go to Database Vendor Page, and use up/down arrows to select a vendor.
Use Tab key to go to "Next" button. Notice that we cannot, and we are forced to
enter a value for the Vendor in the text field, only then hitting TAB focus
shifts to "Next" button.



 Comments   
Comment by Anissa Lam [ 13/Oct/10 ]

Since there is a workaround, ie user can always type in the Database Vendor
name, changing this to a P3.
And this has the lowest priority than other 508 bugs.

Comment by Nazrul [ 11/Nov/10 ]

Changing target milestone from 3.1_ms08 to not determined

Comment by Jason Lee [ 07/Dec/10 ]

These issues will likely not be resolved during the 3.1 cycle, given the current workloads. The related CLIs should provide adequate workarounds for now in those areas where accessibility is inadequate in the console.

Comment by Anissa Lam [ 02/Mar/11 ]

Change all 508 bugs to Minor as 3.1 release was approved. We will revisit later.

Comment by shaline [ 11/Jan/12 ]

This issue exists for GF 3.1.2 where in using the keyboard we cannot select the "database vendor" while creating a JDBC connection pool. But we can type the Database Vendor name in the text field below, and continue with Connection Pool creation.

Comment by Anissa Lam [ 11/Jan/12 ]

added 3_1_2-exclude tag since workaround exceeds, and we are in HCF state for 3.1.2

Comment by Anissa Lam [ 29/Mar/13 ]

Since there is workaround and this is not a regression from 3.x, we will revisit this after 4.0.

Comment by doobrie [ 23/Feb/15 ]

This issue is still present in GlassFish 4.1

The attached patch fixes this issue allowing the driver vendor to be specified either as free text or via the drop down.

Index: appserver/admingui/jdbc/src/main/resources/jdbcConnectionPoolNew1.jsf
===================================================================
--- appserver/admingui/jdbc/src/main/resources/jdbcConnectionPoolNew1.jsf	(revision 63779)
+++ appserver/admingui/jdbc/src/main/resources/jdbcConnectionPoolNew1.jsf	(working copy)
@@ -2,7 +2,7 @@

     DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.

-    Copyright (c) 1997-2013 Oracle and/or its affiliates. All rights reserved.
+    Copyright (c) 1997-2015 Oracle and/or its affiliates. All rights reserved.

     The contents of this file are subject to the terms of either the GNU
     General Public License Version 2 only ("GPL") or the Common Development
@@ -110,7 +110,7 @@
                                     />
                                 </sun:dropDown>
                                 "<br/>
-                                <sun:textField id="dbField"  columns="$int{60}" maxLength="#{sessionScope.fieldLengths['maxLength.common.resType']}" text="#{wizardPoolExtra.DBVendorField}" onFocus="emptyDropdown(this.value);">
+                                <sun:textField id="dbField"  columns="$int{60}" maxLength="#{sessionScope.fieldLengths['maxLength.common.resType']}" text="#{wizardPoolExtra.DBVendorField}" onChange="emptyDropdown(this.value);" onKeyUp="emptyDropdown(this.value);">
                                     <!afterCreate
                                         getClientId(component="$this{component}" clientId="#{pageSession.dbFieldId}");
                                     />
@@ -139,7 +139,9 @@
     }

     function emptyDropdown(fieldValue) {
-        getSelectElement('#{pageSession.dbBoxId}').value="";
+        if (getTextElement('#{pageSession.dbFieldId}').value != '') {
+            getSelectElement('#{pageSession.dbBoxId}').value="";
+        }
     }
     </script>
 </f:verbatim>




[GLASSFISH-12148] Allow child traversal in GET requests Created: 04/Jun/10  Updated: 18/Oct/12

Status: Open
Project: glassfish
Component/s: rest-interface
Affects Version/s: 3.1
Fix Version/s: future release

Type: Improvement Priority: Minor
Reporter: Jason Lee Assignee: Jason Lee
Resolution: Unresolved 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,148
Tags: ee7ri_cleanup_deferred

 Description   

Currently, when a user requests a certain resource, he gets that resource's attributes and a list of URLs
for child resources (and some other items not relevant here):

curl -f http://localhost:4848/management/domain/resources/admin-object-resource.xml

<entity>
<!-- snip-->
<childResources>
<childResource>http://localhost:4848/management/domain/resources/admin-object-
resource/foo</childResource>
<childResource>http://localhost:4848/management/domain/resources/admin-object-
resource/bar</childResource>
<childResource>http://localhost:4848/management/domain/resources/admin-object-
resource/baz</childResource>
</entity>

In the case of the Admin Console, each of the child resources is then requested in certain cases,
resulting in several network calls. It would be nice, then, to able to get the parent object, plus each
child object, to an arbitrary depth, in a single call. For example:

curl -f http://localhost:4848/management/domain/resources/admin-object-resource.xml?
expandLevel=2

would fetch the admin-object-resource (list), as well as each Admin Object Resource and its attributes.



 Comments   
Comment by Jason Lee [ 13/Jul/10 ]

Updating milestone

Comment by Mitesh Meswani [ 16/Oct/12 ]

Assigning to Jason for triage.

Comment by Tom Mueller [ 18/Oct/12 ]

Marking the fix version field as "future-release". This is based on an evaluation by John, Michael, and Tom WRT to the PRD for the Java EE 7 RI/SDK. This issue was deemed to not be a P1 for that release. If this is in error or there are other reasons why this RFE should be targeted for the Java EE 7 RI/SDK release, then change the fix version field back to an appropriate build.





[GLASSFISH-7292] KOR,CHS:Bad translation in warning dialogs Created: 10/Mar/09  Updated: 07/Dec/10

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: V3
Fix Version/s: future release

Type: Bug Priority: Minor
Reporter: xiangguoli Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Solaris
Platform: Sun


Issuezilla Id: 7,292
Tags: 3_1-exclude

 Description   

1. To invoke the admin gui, in the browser invoke this url: https://[host
name]:[admin port]/. In default, the admin port is 4849.
2. In Registration window, click Register button without inputting username and
password
3. A warning dialog which remind user to input username appear

Actual Result:
Bad translation in this warning dialog

Expected Result:
The right format is that '입력하세요.' is behind 'username' or 'password'.In
this case, it is better that translating to '�름� 입력하세요.' or '비밀번호를
입력하세요.'



 Comments   
Comment by leonfan [ 07/Apr/09 ]

It's i18n issue. Developer only put string 'Enter a value for' for key
'msg.JS.enterValue' in files:
admin-gui/src/java/com/sun/enterprise/tools/admingui/resources/Strings.properties
admingui/core/src/main/resources_en/org/glassfish/admingui/core/Strings.properties
admingui/core/src/main/resources_en/core/Strings.properties

We need string like 'Enter a value

{0}

' and we can change the sentence order
during our translation

Comment by Anissa Lam [ 17/Apr/09 ]

> i18n

Comment by gmurr [ 24/Sep/09 ]

please fix the message format so that we can fix the translations

Comment by Anissa Lam [ 27/Sep/09 ]

This bug applies to enforcing required info.
This is client side validation message. Need to fix this in the js.
This is of lower priority than other bugs, lower to P4.
requesting Jason to take a look and fix if possible.





[GLASSFISH-15444] Dev test failures Created: 05/Jan/11  Updated: 06/Mar/12  Due: 14/Jan/11

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 3.1
Fix Version/s: not determined

Type: Bug Priority: Minor
Reporter: Nazrul Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Dependency
depends on GLASSFISH-15547 Dev Test Failure(s) Resolved
depends on GLASSFISH-15549 Dev Test Failure(s) Resolved
depends on GLASSFISH-15548 Dev Test Failure(s) Closed
Tags: 3-1-exclude

 Description   

[Tracking Bug]

We need to get console Dev Tests working. I am filing this bug to track this. Please close it only when all GUI Dev Tests are passing. We plan to leverage these Dev Tests during final system testing to certify different supported OS and browser matrix.

Here is the latest status from today:

[artifact:mvn] -------------------------------------------------------
[artifact:mvn] T E S T S
[artifact:mvn] -------------------------------------------------------
[artifact:mvn] Running org.glassfish.admingui.devtests.TransactionServiceTest

[artifact:mvn] Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 146.721 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.ConnectorsTest

[artifact:mvn] Tests run: 3, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 47.524 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.ConnectorServiceTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 10.328 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.ConfigTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 12.1 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.VirtualServerTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 8.764 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.LifecycleModulesTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 7.567 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.JavaMessageServiceTest

[artifact:mvn] Tests run: 3, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 21.177 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.ResourceAdapterConfigsTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 14.448 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.SecurityTest

[artifact:mvn] Tests run: 6, Failures: 1, Errors: 1, Skipped: 0, Time elapsed: 851.604 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.JVMReportTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 7.61 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.JdbcTest

[artifact:mvn] Tests run: 4, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 35.354 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.LoggerSettingsTest

[artifact:mvn] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 16.116 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.JvmSettingsTest

[artifact:mvn] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 19.002 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.AdminServiceTest

[artifact:mvn] Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 13.248 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.JndiTest

[artifact:mvn] Tests run: 4, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 36.473 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.JmsResourcesTest

[artifact:mvn] Tests run: 4, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 29.295 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.GMSTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 11.942 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.NodeTest

[artifact:mvn] Tests run: 3, Failures: 3, Errors: 0, Skipped: 0, Time elapsed: 345.99 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.ClusterTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 63.381 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.StandaloneTest

[artifact:mvn] Tests run: 3, Failures: 0, Errors: 3, Skipped: 0, Time elapsed: 13.533 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.WorkSecurityMapTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 13.526 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.RestResponseTest

[artifact:mvn] Tests run: 3, Failures: 0, Errors: 3, Skipped: 0, Time elapsed: 3.457 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.EnterpriseServerTest

[artifact:mvn] Tests run: 3, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 21.807 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.HttpServiceTest

[artifact:mvn] Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 124.764 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.AvailabilityServiceTest

[artifact:mvn] Tests run: 4, Failures: 4, Errors: 0, Skipped: 0, Time elapsed: 463.54 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.ApplicationTest

[artifact:mvn] Tests run: 3, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 83.179 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.JavaMailTest

[artifact:mvn] Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 24.111 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.IiopListenerTest

[artifact:mvn] Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 17.501 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.EjbContainerTest

[artifact:mvn] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 28.841 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.MonitoringTest

[artifact:mvn] Tests run: 3, Failures: 1, Errors: 1, Skipped: 0, Time elapsed: 159.509 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.WebContainerTest

[artifact:mvn] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 26.753 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.AdminObjectTest

[artifact:mvn] Tests run: 2, Failures: 1, Errors: 1, Skipped: 0, Time elapsed: 16.684 sec <<< FAILURE!
[artifact:mvn] Running org.glassfish.admingui.devtests.JsonUtilTest
[artifact:mvn] Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.021 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.ThreadPoolsTest

[artifact:mvn] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 13.466 sec
[artifact:mvn] Running org.glassfish.admingui.devtests.NetworkConfigTest

[artifact:mvn] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 28.57 sec
[artifact:mvn]
[artifact:mvn] Results :
[artifact:mvn]
[artifact:mvn] Failed tests:
[artifact:mvn] testTransactionService(org.glassfish.admingui.devtests.TransactionServiceTest)
[artifact:mvn] testAddMessageSecurityConfiguration(org.glassfish.admingui.devtests.SecurityTest)
[artifact:mvn] testCreateAndDeleteNode(org.glassfish.admingui.devtests.NodeTest)
[artifact:mvn] testUpdateNode(org.glassfish.admingui.devtests.NodeTest)
[artifact:mvn] testDeleteWithInstance(org.glassfish.admingui.devtests.NodeTest)
[artifact:mvn] testHttpService(org.glassfish.admingui.devtests.HttpServiceTest)
[artifact:mvn] testAvailabilityService(org.glassfish.admingui.devtests.AvailabilityServiceTest)
[artifact:mvn] testWebContainerAvailability(org.glassfish.admingui.devtests.AvailabilityServiceTest)
[artifact:mvn] testEjbContainerAvailability(org.glassfish.admingui.devtests.AvailabilityServiceTest)
[artifact:mvn] testJMSAvailability(org.glassfish.admingui.devtests.AvailabilityServiceTest)
[artifact:mvn] testDeployWar(org.glassfish.admingui.devtests.ApplicationTest)
[artifact:mvn] testMonitoringApplicationsPage(org.glassfish.admingui.devtests.MonitoringTest)
[artifact:mvn] testAdminObjectResources(org.glassfish.admingui.devtests.AdminObjectTest)
[artifact:mvn]
[artifact:mvn] Tests in error:
[artifact:mvn] testConnectorResourcesWithTargets(org.glassfish.admingui.devtests.ConnectorsTest)
[artifact:mvn] testAddVirtualServer(org.glassfish.admingui.devtests.VirtualServerTest)
[artifact:mvn] testLifecycleModules(org.glassfish.admingui.devtests.LifecycleModulesTest)
[artifact:mvn] testJmsPhysicalDestinations(org.glassfish.admingui.devtests.JavaMessageServiceTest)
[artifact:mvn] testSecurityPage(org.glassfish.admingui.devtests.SecurityTest)
[artifact:mvn] testJdbcResourcesWithTargets(org.glassfish.admingui.devtests.JdbcTest)
[artifact:mvn] testEditJmxConntector(org.glassfish.admingui.devtests.AdminServiceTest)
[artifact:mvn] testCustomResourcesWithTargets(org.glassfish.admingui.devtests.JndiTest)
[artifact:mvn] testExternalResourcesWithTargets(org.glassfish.admingui.devtests.JndiTest)
[artifact:mvn] testAddingConnectionFactoriesWithTargets(org.glassfish.admingui.devtests.JmsResourcesTest)
[artifact:mvn] testAddingDestinationResourcesWithTargets(org.glassfish.admingui.devtests.JmsResourcesTest)
[artifact:mvn] testProperties(org.glassfish.admingui.devtests.StandaloneTest)
[artifact:mvn] testCreateAndDeleteStandaloneInstance(org.glassfish.admingui.devtests.StandaloneTest)
[artifact:mvn] testStandaloneInstanceResourcesPage(org.glassfish.admingui.devtests.StandaloneTest)
[artifact:mvn] testPostCommand(org.glassfish.admingui.devtests.RestResponseTest)
[artifact:mvn] testGetCommand(org.glassfish.admingui.devtests.RestResponseTest)
[artifact:mvn] testEndpointExists(org.glassfish.admingui.devtests.RestResponseTest)
[artifact:mvn] testSystemProperties(org.glassfish.admingui.devtests.EnterpriseServerTest)
[artifact:mvn] createMailResourceWithTargets(org.glassfish.admingui.devtests.JavaMailTest)
[artifact:mvn] testMonitoringServerPage(org.glassfish.admingui.devtests.MonitoringTest)
[artifact:mvn] testAdminObjectResourcesWithTargets(org.glassfish.admingui.devtests.AdminObjectTest)
[artifact:mvn]
[artifact:mvn] Tests run: 88, Failures: 13, Errors: 21, Skipped: 0
[artifact:mvn]
[artifact:mvn] [INFO] ------------------------------------------------------------------------
[artifact:mvn] [ERROR] BUILD FAILURE
[artifact:mvn] [INFO] ------------------------------------------------------------------------
[artifact:mvn] [INFO] There are test failures.
[artifact:mvn]
[artifact:mvn] Please refer to c:\hudson\workspace\v3-admingui-devtests\devtests\target\surefire-reports for the individual test results.
[artifact:mvn] [INFO] ------------------------------------------------------------------------
[artifact:mvn] [INFO] For more information, run Maven with the -e switch
[artifact:mvn] [INFO] ------------------------------------------------------------------------
[artifact:mvn] [INFO] Total time: 46 minutes 1 second
[artifact:mvn] [INFO] Finished at: Wed Jan 05 09:11:40 CST 2011
[artifact:mvn] [INFO] Final Memory: 22M/94M
[artifact:mvn] [INFO] ------------------------------------------------------------------------
[artifact:mvn] Java Result: 1



 Comments   
Comment by Nazrul [ 05/Jan/11 ]

Adding 3_1-review to exclude from un-scrubbed list

Comment by Tom Mueller [ 06/Mar/12 ]

Bulk update to change fix version to "not determined" for all issues still open but with a fix version for a released version.





[GLASSFISH-19049] 500 internal error is displayed when a deleted JMS is accessed from another clients Created: 04/Sep/12  Updated: 19/Oct/12

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 4.0_b45
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: tak09 Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

500 internal error is displayed when JMS is accessed from multiple clients

Please try the following to reproduce the problem:

1.Login to the admin console from multiple clients. (GUI-1, GUI-2)

2.On the GUI-1, select "Configurations>Java Message Service" from the navigation tree.
Then, create "test-config".

  • On the GUI-1, please confirm "test-config" has been created under Configurations.

3.On the GUI-2, select Configurations and delete the "test-config".

4.On the GUI-1, select "test-config>Java Message Service".
Then, 500 internal error is displayed as a result.



 Comments   
Comment by Jeremy_Lv [ 04/Sep/12 ]

tag09:
It's an improvement but not a bug, The better way to satisfied the user is to tell them the config is deleted by other clients.

Comment by Anissa Lam [ 19/Oct/12 ]

GUI should handle this error case better. But since there is easy workaround, by refreshing the screen, I mark this as 'minor'.





[GLASSFISH-18745] ClassCastException upon request to /management/application.wadl Created: 21/May/12  Updated: 26/Mar/13

Status: In Progress
Project: glassfish
Component/s: rest-interface
Affects Version/s: 3.1.2
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: pdudits Assignee: Jason Lee
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows XP, JDK1.7.0_03



 Description   

When making request to http://localhost:10048/management/application.wadl (where 10048 is management port of freshly created domain with --portbase 10000), I get response

An error occurred while processing the request. Please see the server logs for details.

The log contains following errors:

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.lang.String|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class org.glassfish.admin.rest.results.ActionReportResult|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class org.glassfish.admin.rest.results.ActionReportResult|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class org.glassfish.admin.rest.results.ActionReportResult|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class org.glassfish.admin.rest.results.ActionReportResult|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class org.glassfish.admin.rest.results.ActionReportResult|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class org.glassfish.admin.rest.results.ActionReportResult|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class org.glassfish.admin.rest.results.ActionReportResult|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.777+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class com.sun.jersey.multipart.FormDataMultiPart|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.util.HashMap|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.lang.Object|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.lang.Object|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class java.lang.Object|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|INFO|glassfish3.1.2|com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator|_ThreadID=60;_ThreadName=Thread-2;|Couldn't find JAX-B element for class javax.ws.rs.core.Response|#]

[#|2012-05-21T15:37:40.792+0200|SEVERE|glassfish3.1.2|com.sun.jersey.spi.container.ContainerResponse|_ThreadID=60;_ThreadName=Thread-2;|The RuntimeException could not be mapped to a response, re-throwing to the HTTP container
java.lang.ClassCastException: sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl cannot be cast to java.lang.Class
	at com.sun.jersey.server.wadl.generators.WadlGeneratorJAXBGrammarGenerator.attachTypes(WadlGeneratorJAXBGrammarGenerator.java:498)
	at com.sun.jersey.server.wadl.WadlBuilder.generate(WadlBuilder.java:124)
	at com.sun.jersey.server.impl.wadl.WadlApplicationContextImpl.getApplication(WadlApplicationContextImpl.java:105)
	at com.sun.jersey.server.impl.wadl.WadlResource.getWadl(WadlResource.java:95)
	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 com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(JavaMethodInvokerFactory.java:60)
	at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:205)
	at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:75)
	at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:288)
	at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.accept(ResourceClassRule.java:108)
	at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.accept(RightHandPathRule.java:147)
	at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(RootResourceClassesRule.java:84)
	at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1469)
	at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1400)
	at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1349)
	at com.sun.jersey.server.impl.application.WebApplicationImpl.handleRequest(WebApplicationImpl.java:1339)
	at com.sun.jersey.server.impl.container.grizzly.GrizzlyContainer._service(GrizzlyContainer.java:182)
	at com.sun.jersey.server.impl.container.grizzly.GrizzlyContainer.service(GrizzlyContainer.java:147)
	at org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:148)
	at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:179)
	at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$Hk2DispatcherCallable.call(ContainerMapper.java:354)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)
|#]


 Comments   
Comment by kungmarkatta [ 13/Jul/12 ]

For what it's worth, I'm also getting this error on two different installations. One vanilla install, and one with applications deployed.

Comment by ymajoros [ 25/Jul/12 ]

Same here on all GF 3.1.2 I could check (8 servers, Linux & Windows, quite different environments).

Comment by smithbr4 [ 08/Mar/13 ]

I am running GF 3.1.2 build 23 and getting this error. If anyone has a copy of what the wadl should look like I would really like to have that.

Comment by Jason Lee [ 26/Mar/13 ]

I am not seeing this issue in trunk, but there is another issue with WADL for which a JIRA has been raised against Jersey (http://java.net/jira/browse/JERSEY-1818). Once that is resolved, I will close this issue.





[GLASSFISH-15997] Intermittent issue : Left tree not refreshed when new elements are added/removed in IE and firefox. Created: 15/Feb/11  Updated: 12/Mar/13

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 3.1_b43
Fix Version/s: 4.0

Type: Bug Priority: Minor
Reporter: shaline Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS: Windows 2008, and Sparc.
Browsers : IE7, 8 and firefox 3.6


Attachments: JPEG File screenshot-1.jpg    
Issue Links:
Duplicate
is duplicated by GLASSFISH-16967 GUI does not correctly synchronize tr... Resolved
is duplicated by GLASSFISH-17230 Deleting a cluster does not refresh t... Resolved
is duplicated by GLASSFISH-18286 Regression: nodes tree not updated wi... Resolved

 Description   

Build used : GF V3.1 promoted b43.

Sometimes in IE and firefox browsers, when new elements are added, Ex: JDBC Pools, resources, new Configurations, Virtual servers, etc, the left tree node does not get refreshed, while we do see the new items in the right table. This issue is not consistently reproducible and is very intermittent. Reloading the Console solves the issue and displays the new values in the left tree node.
This issue can be documented.



 Comments   
Comment by lidiam [ 16/Feb/11 ]

This is happening very often for me. I think it depends how long Admin Console is in use. The bad thing is that once I remove an element, e.g. a cluster, it is not removed from the nodes tree. I can still click on it there and get the following error:

An error has occurred
The target, c1, is not an instance, cluster, domain, node or config.

I'll attach a screenshot for that.

Once this problem starts, it does not go away till the url is reloaded.

Comment by Anissa Lam [ 14/Mar/11 ]

Summary and workaround:

This issue is not consistently reproducible and is very intermittent. Reloading the Console by pressing the Home button or browser's reload button solves the issue and displays the new values in the left tree node.

Comment by Scott Fordin [ 13/Apr/11 ]

Added issue to 3.1 Release Notes.

Comment by shaline [ 08/Nov/11 ]

I still see this issue on GF 3.1.2 promoted and nightly builds. This issue shows up if the Admin Console is used for quite sometime, and then any new elements added like resources, network listeners, virtual servers, realms, clusters, instances etc , do not show up in the left tree. Even the deleted elements does not get deleted from the left tree. We have to use the browser's reload button for this problem to go away.

Comment by Anissa Lam [ 12/Feb/13 ]

Issues need to be addressed before 4.0 HCF (3/25)

Comment by Anissa Lam [ 12/Mar/13 ]

This is Intermittent with easy work around.
We will continue release notes this. The work around is to click the Home button and the tree should be refreshed correctly.





[GLASSFISH-15753] JMS Physical Destination: INFO message in server log: Did you forget to reset the value after changing the options? Created: 29/Jan/11  Updated: 01/Feb/11

Status: Open
Project: glassfish
Component/s: admin_gui
Affects Version/s: 3.1_b39
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Harshad Vilekar Assignee: Jason Lee
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Tags: 3_1-exclude

 Description   

Every time JMS destination name is clicked, Server log displays following message:

====================================
[#|2011-01-29T15:57:59.032-0800|INFO|glassfish3.1|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=146;_ThreadName=admin-thread-pool-4848(3);|com.sun.webui.jsf.component.DropDown::The current value of component jmsPhysDestForm:propertySheet:propertSectionTextField:useDmqProp:useDmq does not match any of the selections.
Did you forget to reset the value after changing the options? |#]
====================================

To duplicate:
click on: server - JMS Physical Destination - New - Name: myTopic - Save - click on myTopic

This may be lower priority, I didn't notice any other functional issues due to this.

Reporting for further evaluation.



 Comments   
Comment by Anissa Lam [ 29/Jan/11 ]

This comes from woodstock even though we are doing everything correctly.
As you mentioned, this is logged in server.log and there is no functional issue at all.
Downgrade to p4.





Generated at Sat Jul 23 18:24:15 UTC 2016 using JIRA 6.2.3#6260-sha1:63ef1d6dac3f4f4d7db4c1effd405ba38ccdc558.