Dynamiczne tworzenie wykresów JSF

0

Cześć, czy ktoś na forum orientuje się może czy w JSF można bezpośrednio w kodzie Javowym dodawać jakiś własny komponent z xhtml? Jeżeli tak to jak dokładnie można tego użyć? Dokładnie chodzi mi o to, że mam swój szablon jakiegoś wykresy i chciałbym go umieszczać na czymś w rodzaju tablicy i teraz pytanie czy można to robić dynamicznie bez uprzedniego deklarowania tego wykresu w kodzie xhtml.

0

W jednym z projektów mam kod JFreeChart, który tworzy wykres w języku Java po stronie sewera, a następnie wyrzuca go do byte array. Po stronie aplikacji webowej JSF konsumuje byte array i drukuje wygenerowany obrazek. Wiadomo, wykresy typu HighCharts są fajniejsze i mają większe możliwości, ale na moje potrzeby to starczyło.

Jak tworzysz własne wykresy facelets zapenia wygodny sposób tworzenia komponentów w JSF. Widziałem jak ktoś integrował HighCharts z JSF. Poza tym PrimeFaces ma proste wykresy w biliotece standardowej (frontendowe).

0

Właśnie chciałbym wykorzystać primefaces, chodzi o to, że mam coś w rodzaju "tablicy korkowej" na którą wrzucam wykresy jako obiekty i pytanie, jeżeli chciałbym sobie zdefiniować taki wykres z jakimiś elementami primeface'a np suwaki jako własny komponent jak to dynamicznie dodawać?

0

Każdy UIComponent w JSF ma metodę getChildren, i za jej pomocą możesz dodawać nowe komponenty bez deklarowania w szablonie html.
Wyglądałoby to jakoś tak:

<p:outputPanel id="tablica" binding=#{kontroler.outputPanelComponent}> </p:outputPanel>
<p:commandButton value="Dodaj" actionListener=#{kontroler.onButtonClick} update=":tablica" />
@Named
@ViewScoped
class Kontroler{
  OutputPanel outputPanelComponent; // dodać getter
  void onButtonClick(){
    outputPanelComponent.getChilren().add( new Chart(...) );
  }
}

Poza tym w Primefaces jest komponent dashboard , może ci wystarczy (on ma dodatkowo swoje własne api)?

0

Wiem o dashboard, ale chodzi o to, że chce do takiego dashoboarda dodawać np suwaki w sensie żeby np w moim komponencie był taki chart + dwa suwaki do niego.

1 użytkowników online, w tym zalogowanych: 0, gości: 1