Přidání jiné webové stránky do Vaadin view

Do Vaadin view lze jinou webovou stránku přidat velmi jednoduše. Pro vložení jiného webu do aktuální stránky se v HTML používá element <iframe>. IFrame (Inline Frame, do češtiny se překládá jako plovoucí rám) vymezuje plochu v aktuální stránce pro vložení jiné webové stránky. Do Vaadin view lze <iframe> vložit pomocí objektu BrowserFrame.

final BrowserFrame browserFrame = new BrowserFrame("Stránka inITjobs.cz", new ExternalResource("https://www.initjobs.cz"));
browserFrame.setWidth("100%");
browserFrame.setHeight("600px");
addComponent(browserFrame);

Pro zvýraznění jsem přidal elementu <iframe> ohraničení.

.v-browserframe iframe {
  padding: 10px;
  border: 1px solid black;
}

Regulární výrazy v Javě

Pomocí regulárních výrazů definujeme vzory hledání pro řetězce. Vzor může být jediný znak, přesný řetězec, nebo složitý výraz obsahující speciální znaky.

Regulární výraz Popis
. Jakýkoliv znak
* Výskyt 0 nebo vícekrát
+ Výskyt 1 nebo vícekrát
? Výskyt 0 nebo jedenkrát
^ Začátek řádky (^A – začátek řádku musí začínat na A)
$ Konec řádky (z$ – řádek musí končit na z)
[] Definice možných výskytů ([123] – obsahuje 1, 2 nebo 3)
{} Počet možných výskytů ({5,7} – vyskytuje se alespoň 5x a maximálně 7x)
() Seskupení výrazů
| Nebo (a|b – a nebo b)
?! Negace (a?!b – a pokud není následováno b)
(?i) Regulární výraz není citlivý na malá a velká písmena (pozor na písmena s diakritikou)
\d Jakékoliv číslo
\D Cokoliv kromě čísla
\s Jakýkoliv bílý znak
\S Cokoliv kromě bílých znaků
\w Písmeno, číslice nebo podtržítko
\W Cokoliv kromě písmena, číslice nebo podtržítka

Java String má následující metody, které jako parametr mají regulární výraz:

string.matches("regex")
string.split("regex")
string.replaceFirst("regex", "replacement")
string.replaceAll("regex", "replacement")

Pro pokročilejší práci s regulárními výrazy se používají třídy Pattern a Matcher.

final String text = "Nějaký text";
final String regex = "Regulární výraz";
final Pattern pattern = Pattern.compile(regex);
final Matcher matcher = pattern.matcher(text);
matcher.find()

Změna verze Javy z 8 na 11

Nedávno jsem prováděl změny verze Javy na projektu, který používá Spring Boot. Měnil jsem verzi Javy z verze 8 na verzi 11. Nebylo to až tak strašné, jak jsem čekal (spíše naopak), přesto se ale některé komplikace objevily. V tomto příspěvku budu postupovat od chyby k chybě, tak jak se u mě objevovaly.

Číst dál

Instalace Open JDK na Ubuntu

V tomto příspěvku se podíváme na to, jak instalovat Open JDK na Ubuntu. To, zda již nějakou verzi Javy máte nainstalovánu zjistíte příkazem java -version.

java -version
openjdk 11.0.2 2019-01-15
OpenJDK Runtime Environment (build 11.0.2+9-Ubuntu-3ubuntu118.04.3)
OpenJDK 64-Bit Server VM (build 11.0.2+9-Ubuntu-3ubuntu118.04.3, mixed mode, sharing)

To, zda máte více verzí Javy zjistíte příkazem update-alternatives --config java.

update-alternatives --config java
There is only one alternative in link group java (providing /usr/bin/java): /usr/lib/jvm/java-11-openjdk-amd64/bin/java
Nothing to configure.

Jak je vidět z výpisu mám pouze jednu verzi Javy. Defaultní JDK nainstaluje takto:

apt-get install default-jdk
Reading package lists... Done
Building dependency tree
Reading state information... Done
default-jdk is already the newest version (2:1.11-68ubuntu1~18.04.1).

V tomto případě není co instalovat.

Idea IDE a česká klávesnice

Používáte vývojové prostředí Idea IDE a k tomu českou klávesnici? Je pravděpodobné, že máte problém s určitými znaky. Například se znaky [>{}. Řešením je nastavení hodnoty actionSystem.force.alt.gr v registru na true.

Postup:

V IDE stiskněte kombinaci kláves Ctrl + Shift + A a do vyhledávacího pole napište registry.

Nastavte hodnotu actionSystem.force.alt.gr na true.

Zdroj: youtrack.jetbrains.com/issue/IDEA-91975

Nový projekt v Idea IDE ze vzdáleného Git úložiště

Idea IDE má velmi dobře propracovánu spolupráci s verzovacím systémem Git. Pro vytvoření nového projektu z existujícího Git úložiště (repository) je postup následující: File -> New -> Project from Version Control -> Git

Otevře se okno, do kterého zadáte Git Repostory URL (adresa vzádleného úložiště), Parent Directory (ve Windows to bývá C:\Users\user-name\IdeaProjects) a Directory Name (většinou je to název projektu). Po vyplnění údajů klikněte na Clone. Idea naklonuje projekt ze vzdáleného úložiště do zadané složky (C:\Users\user-name\IdeaProjects\složka) a otevře jej. Je třeba ještě nastavit SDK (Idea vás na to upozorní, stačí jen kliknout na odkaz a vybrat z nabízených SDK).

Vaadin 8 a odkazy

Vaadin Link (odkaz) je klasický html odkaz <a href…> a na rozdíl od tlačítka a click listeneru jej crawler webových stránek je schopen najít a následovat na url, na kterou směřuje.

Textový odkaz

Link link = new Link("praceodnas.cz", new ExternalResource("https://www.praceodnas.cz"));
addComponent(link);

Obrázek jako odkaz

Jako obrázek je možné použít ClassResource nebo ThemeResource. Pokud používáte klasickou Maven strukturu projektu, ClassResource je zdroj ve složce src/main/resources. V příkladu uvedený new ClassResource("/images/logo.png") znamená, že soubor logo.png se nachází ve složce src/main/resources/images.

Číst dál