Re: Failure to find any font (probably on Embedded)

2014-02-13 Thread Phil Race

I agree that embeded is the only place it should happen.
On a Linux desktop system if fontconfig isn't there then likely your 
entire desktop is DOA.

And embedded is likely to be an integrated h/w  s/w stack so I would
expect that this would not be a common end-user problem ...

-phil.

On 2/12/2014 2:45 PM, Daniel Blaukopf wrote:

Unless someone has removed font files from the Java directory tree - in which 
case all bets are off - this won’t happen with the JRE or JDK for any platform. 
It will only happen with Java SE Embedded Compact Profiles. So referring them 
to “the release notes for Java SE Embedded” seems reasonable. We can verify 
with the version system properties that this is actually SE Embedded before 
showing that message.
Daniel

On Feb 12, 2014, at 1:53 PM, Kevin Rushforth kevin.rushfo...@oracle.com wrote:


A more informative message and an earlier detection both sound good. Not sure about the 
pointer to the Wiki page, though. We haven't done that in the past that I am aware of. If 
we do want to go down that path, I would suggest a pointer to a single, 
well-known support page that could describe various end-user configuration 
issues that we might want to document.

-- Kevin


David Hill wrote:

I am chasing a edge case that probably only happens in certain Embedded 
configurations. If we don't find *any* fonts, then we quietly fail and blame it 
on CSS :-)

I say blame it on CSS because the resulting hard failure is:
Exception in thread JavaFX Application Thread java.lang.NoClassDefFoundError: 
Could not initialize class javafx.scene.CssStyleHelper
This is because CSS needs a font for various calculations.

With Embedded, if libfontconfig is not present (or improperly configured) you 
will not find any fonts.

I would like thoughts on my putting a more informative error message out, and 
making zero fonts an earlier hard failure.

What I would really like to do is to be able to put a URL to a Fonts wiki page 
(like: https://wiki.openjdk.java.net/display/OpenJFX/Font+Setup) but not sure 
how well that would stand up to the test of time.

The code point in FontConfigManager is:

if (anyFont == null) {
if (debugFonts) {
System.err.println(Fontconfig returned no fonts at all.);
}
fontConfigFailed = true;
return;





Re: Failure to find any font (probably on Embedded)

2014-02-12 Thread Kevin Rushforth
A more informative message and an earlier detection both sound good. Not 
sure about the pointer to the Wiki page, though. We haven't done that in 
the past that I am aware of. If we do want to go down that path, I would 
suggest a pointer to a single, well-known support page that could 
describe various end-user configuration issues that we might want to 
document.


-- Kevin


David Hill wrote:


I am chasing a edge case that probably only happens in certain 
Embedded configurations. If we don't find *any* fonts, then we quietly 
fail and blame it on CSS :-)


I say blame it on CSS because the resulting hard failure is:
Exception in thread JavaFX Application Thread 
java.lang.NoClassDefFoundError: Could not initialize class 
javafx.scene.CssStyleHelper

This is because CSS needs a font for various calculations.

With Embedded, if libfontconfig is not present (or improperly 
configured) you will not find any fonts.


I would like thoughts on my putting a more informative error message 
out, and making zero fonts an earlier hard failure.


What I would really like to do is to be able to put a URL to a Fonts 
wiki page (like: 
https://wiki.openjdk.java.net/display/OpenJFX/Font+Setup) but not sure 
how well that would stand up to the test of time.


The code point in FontConfigManager is:

if (anyFont == null) {
if (debugFonts) {
System.err.println(Fontconfig returned no fonts at 
all.);

}
fontConfigFailed = true;
return;



Re: Failure to find any font (probably on Embedded)

2014-02-12 Thread Stephen F Northover
Embedding URL's in code ... a recipe for stale URL's.  I suppose that we 
put URL's in JavaDoc though.


Steve

On 2014-02-12 1:53 PM, Kevin Rushforth wrote:
A more informative message and an earlier detection both sound good. 
Not sure about the pointer to the Wiki page, though. We haven't done 
that in the past that I am aware of. If we do want to go down that 
path, I would suggest a pointer to a single, well-known support page 
that could describe various end-user configuration issues that we 
might want to document.


-- Kevin


David Hill wrote:


I am chasing a edge case that probably only happens in certain 
Embedded configurations. If we don't find *any* fonts, then we 
quietly fail and blame it on CSS :-)


I say blame it on CSS because the resulting hard failure is:
Exception in thread JavaFX Application Thread 
java.lang.NoClassDefFoundError: Could not initialize class 
javafx.scene.CssStyleHelper

This is because CSS needs a font for various calculations.

With Embedded, if libfontconfig is not present (or improperly 
configured) you will not find any fonts.


I would like thoughts on my putting a more informative error message 
out, and making zero fonts an earlier hard failure.


What I would really like to do is to be able to put a URL to a Fonts 
wiki page (like: 
https://wiki.openjdk.java.net/display/OpenJFX/Font+Setup) but not 
sure how well that would stand up to the test of time.


The code point in FontConfigManager is:

if (anyFont == null) {
if (debugFonts) {
System.err.println(Fontconfig returned no fonts at 
all.);

}
fontConfigFailed = true;
return;





Re: Failure to find any font (probably on Embedded)

2014-02-12 Thread Daniel Blaukopf
Unless someone has removed font files from the Java directory tree - in which 
case all bets are off - this won’t happen with the JRE or JDK for any platform. 
It will only happen with Java SE Embedded Compact Profiles. So referring them 
to “the release notes for Java SE Embedded” seems reasonable. We can verify 
with the version system properties that this is actually SE Embedded before 
showing that message.
Daniel

On Feb 12, 2014, at 1:53 PM, Kevin Rushforth kevin.rushfo...@oracle.com wrote:

 A more informative message and an earlier detection both sound good. Not sure 
 about the pointer to the Wiki page, though. We haven't done that in the past 
 that I am aware of. If we do want to go down that path, I would suggest a 
 pointer to a single, well-known support page that could describe various 
 end-user configuration issues that we might want to document.
 
 -- Kevin
 
 
 David Hill wrote:
 
 I am chasing a edge case that probably only happens in certain Embedded 
 configurations. If we don't find *any* fonts, then we quietly fail and blame 
 it on CSS :-)
 
 I say blame it on CSS because the resulting hard failure is:
 Exception in thread JavaFX Application Thread 
 java.lang.NoClassDefFoundError: Could not initialize class 
 javafx.scene.CssStyleHelper
 This is because CSS needs a font for various calculations.
 
 With Embedded, if libfontconfig is not present (or improperly configured) 
 you will not find any fonts.
 
 I would like thoughts on my putting a more informative error message out, 
 and making zero fonts an earlier hard failure.
 
 What I would really like to do is to be able to put a URL to a Fonts wiki 
 page (like: https://wiki.openjdk.java.net/display/OpenJFX/Font+Setup) but 
 not sure how well that would stand up to the test of time.
 
 The code point in FontConfigManager is:
 
if (anyFont == null) {
if (debugFonts) {
System.err.println(Fontconfig returned no fonts at all.);
}
fontConfigFailed = true;
return;
 



Re: Failure to find any font (probably on Embedded)

2014-02-12 Thread Kevin Rushforth

 Embedding URL's in code ... a recipe for stale URL's.

Yeah, that's why I'm not sure I like it...

-- Kevin


Stephen F Northover wrote:
Embedding URL's in code ... a recipe for stale URL's.  I suppose that 
we put URL's in JavaDoc though.


Steve

On 2014-02-12 1:53 PM, Kevin Rushforth wrote:
A more informative message and an earlier detection both sound good. 
Not sure about the pointer to the Wiki page, though. We haven't done 
that in the past that I am aware of. If we do want to go down that 
path, I would suggest a pointer to a single, well-known support 
page that could describe various end-user configuration issues that 
we might want to document.


-- Kevin


David Hill wrote:


I am chasing a edge case that probably only happens in certain 
Embedded configurations. If we don't find *any* fonts, then we 
quietly fail and blame it on CSS :-)


I say blame it on CSS because the resulting hard failure is:
Exception in thread JavaFX Application Thread 
java.lang.NoClassDefFoundError: Could not initialize class 
javafx.scene.CssStyleHelper

This is because CSS needs a font for various calculations.

With Embedded, if libfontconfig is not present (or improperly 
configured) you will not find any fonts.


I would like thoughts on my putting a more informative error message 
out, and making zero fonts an earlier hard failure.


What I would really like to do is to be able to put a URL to a Fonts 
wiki page (like: 
https://wiki.openjdk.java.net/display/OpenJFX/Font+Setup) but not 
sure how well that would stand up to the test of time.


The code point in FontConfigManager is:

if (anyFont == null) {
if (debugFonts) {
System.err.println(Fontconfig returned no fonts at 
all.);

}
fontConfigFailed = true;
return;