У меня есть Java-апплет, который я написал, и уже давно запускаю его.В апплете у меня есть куча JLabels, которые используют HTML в своем текстовом содержимом (что разрешено и работает уже много лет).Основная причина, по которой я использую HTML, заключается в том, что в JLabels разрешены разрывы строк.
Проблема: относительно недавно JLabels, в которых есть HTML (некоторые не), перестали отображать свой текст.Я думаю, что это может быть как-то связано с недавним обновлением Java (Java SE 6 Update 22, 2010-Oct-12), не на 100% уверенным, но проблемы, похоже, начались тогда.Может быть, ошибка была введена?или функция удалена?
Я пытался использовать JEditorPane, и у меня, похоже, были те же проблемы, когда содержимое было HTML.
Также важно отметить, что при первой загрузке апплета (сначалакогда запускается среда выполнения Java), она работает FINE, но если вы обновляете веб-страницу, возникают проблемы, как описано.
Есть ли у кого-нибудь подобные проблемы?У кого-нибудь есть идеи?или я просто что-то делаю глупо?
Я сделал очень простой тестовый апплет и могу воспроизвести проблемы со 100% регулярностью (помня, что при первой загрузке во время выполнения программа будет работать нормально, только последовательные обновления приведут квопросы):
[HelloWorldApplet.java]
import javax.swing.*;
public class HelloWorldApplet extends JApplet
{
public void init()
{
this.add(new JLabel("Hello Everybody (Text)"), java.awt.BorderLayout.NORTH);
this.add(new JLabel("<html><body>Hello Everybody (HTML)</body></html>"), java.awt.BorderLayout.SOUTH);
}
}
[HellowWorldApplet.html]
<html>
<title>A Test</title>
<body>
<applet code="HelloWorldApplet.class" width="320" height="120">
You need Java
</applet>
</body>
</html>
PS.Я в основном тестировал с использованием Chrome, но я вкратце попробовал и в IE 8.Кроме того, у меня (очевидно) установлено последнее обновление 22 для Java SE 6, установленное в качестве среды выполнения, и соответствующее обновление для моего JDK.Я компилирую вышеупомянутый тестовый апплет, используя просто: "javac HelloWorldApplet.java"