Bloquear acesso às páginas por url

Pretendo que os utilizadores só tenham acesso às páginas através do login e não colocando o caminho na URL e abra a página. Para isso estou a usar este código:

$  host = $  _SERVER['REQUEST_METHOD']; if ($  host == 'GET') {     header("Location: ./login"); } 

Mas com este código mesmo fazendo login com credenciais corretas envia-me sempre para a página do login.

A página do login tem o seguinte código:

<div class="container">        <form class="form-signin" method="POST" action="./index.php/valida">         <h2 class="form-signin-heading">Área Restrita</h2>         <label for="inputnome" class="sr-only">Nome</label>         <input type="text" name="nome" id="inputnome" class="form-control" placeholder="Nome" required autofocus>         <label for="inputPassword" class="sr-only">Senha</label>         <input type="password" name="senha" id="inputPassword" class="form-control" placeholder="Senha" required>         <button class="btn btn-lg btn-danger btn-block" type="submit">Entrar</button>       </form>       <p class="text-center text-danger">             <?php if(isset($  _SESSION['loginErro'])){                 echo $  _SESSION['loginErro'];                 unset($  _SESSION['loginErro']);             }?>         </p>         <p class="text-center text-success">             <?php              if(isset($  _SESSION['logindeslogado'])){                 echo $  _SESSION['logindeslogado'];                 unset($  _SESSION['logindeslogado']);             }             ?>         </p>     </div> <!-- /container --> 

A página valida tem o seguinte php:

session_start();      //Incluindo a conexão com banco de dados     require ("conexao.php");     //O campo usuário e senha preenchido entra no if para validar     if((isset($  _POST['nome'])) && (isset($  _POST['senha']))){         $  usuario = mysqli_real_escape_string($  conn, $  _POST['nome']); //Escapar de caracteres especiais, como aspas, prevenindo SQL injection         $  senha = mysqli_real_escape_string($  conn, $  _POST['senha']);         $  senha = sha1($  senha);          //Buscar na tabela usuario o usuário que corresponde com os dados digitado no formulário         $  result_usuario = "SELECT * FROM usuarios WHERE nome = '$  usuario' && senha = '$  senha' && situacoe_id = '1' LIMIT 1";         $  resultado_usuario = mysqli_query($  conn, $  result_usuario);         $  resultado = mysqli_fetch_assoc($  resultado_usuario);          //Encontrado um usuario na tabela usuário com os mesmos dados digitado no formulário         if(isset($  resultado)){             $  _SESSION['usuarioId'] = $  resultado['id'];             $  _SESSION['usuarioNome'] = $  resultado['nome'];             $  _SESSION['usuarioNiveisAcessoId'] = $  resultado['niveis_acesso_id'];             $  _SESSION['usuarioEmail'] = $  resultado['email'];             if($  _SESSION['usuarioNiveisAcessoId'] == "1"){                 header("Location: ./index.php/administrativo");             }elseif($  _SESSION['usuarioNiveisAcessoId'] == "2"){                 header("Location: ./index.php/colaborador");             }elseif($  _SESSION['usuarioNiveisAcessoId'] == "3"){                 header("Location: ./index.php/enfermagem");             }else{                 header("Location: ./index.php/cliente");             }         //Não foi encontrado um usuario na tabela usuário com os mesmos dados digitado no formulário         //redireciona o usuario para a página de login         }else{               //Váriavel global recebendo a mensagem de erro             $  _SESSION['loginErro'] = "Usuário ou senha Inválido";             header("Location: ./login");         }     //O campo usuário e senha não preenchido entra no else e redireciona o usuário para a página de login     }else{         $  _SESSION['loginErro'] = "Usuário ou senha inválido";         header("Location: ./login");     } 

E a página administrativo está assim:

<?php /* Template Name: administrativo  */  $  host = $  _SERVER['REQUEST_METHOD']; if ($  host == 'GET') {     header("Location: ./login"); } session_start();  get_header1(); ?> 

O código devia apenas bloquear o acesso sem login, fazendo login devia permitir aceder

¿Como restringir algunas paginas a determinado usuario asp.net mvc?

Tengo un login, uso form authentication. El login tiene un checkbox para verificar si el que se loguea es profesor. Si se si tilda el checkbox es profesor, si no es alumno.

La consulta es como hago para que en caso que sea alumno no pueda entrar a ninguna accion de un profesor y viceversa.

Uso Authorize para retringir cualquier accion si no inicio sesión. Pero cuando me logue como profesor puedo entrar a las paginas de alumnos y viceversa.

En la base de datos tengo una tabla para alumnos y otra para profesores.

Slider com páginas web HTML

Preciso fazer um slider com páginas da web, por exemplo que a cada 15 segundos faça uma troca de página dentro da mesma página html, consegui fazer mas está aceitando apenas imagens e textos, gostaria que fosse páginas, alguém pode me ajudar?

Código HTML:

Index

       <div class="gallery autoplay items-5">          <div id="item-1" class="control-operator"></div>         <div id="item-2" class="control-operator"></div>         <div id="item-3" class="control-operator"></div>         <div id="item-4" class="control-operator"></div>         <div id="item-5" class="control-operator"></div>          <figure class="item">             <h1>Dashboard IOT</h1>         </figure>          <figure class="item">            <h1><img src=""></h1>         </figure>          <figure class="item">             <h1><img src=""></h1>         </figure>          <figure class="item">                 <h1><img src=""></h1>         </figure>          <figure class="item">                 <h1><img src=""></h1>         </figure>          <div class="controls">             <a href="#item-1" class="control-button">.</a>             <a href="#item-2" class="control-button">.</a>                      <a href="#item-3" class="control-button">.</a>             <a href="#item-4" class="control-button">.</a>             <a href="#item-5" class="control-button">.</a>         </div>      </div>      </div> 

Session PHP – nao esta carregando em outras paginas php

eu realizo o login, ai ele vai para uma pagina index inserir a descrição da imagem aqui A partir dessa pagina index ele pode acessar outras paginas, aonde faço a verificação da session no topo da pagina inserir a descrição da imagem aqui

o problema é que mesmo fazendo o login, quando tento acessar qualquer outra pagina ele não acessa, volta sempre pra pagina do login, como se não existisse a session, já procurei vários tópicos e não ache a solução, a versão do meu PHP é a 7.1.28

¿Por qué mi aplicación hecha en React me da error 404 en todas las páginas salvo la principal?

Estoy intentando probar la versión de producción de una web que he hecho utilizando React, pero cuando ejecuto serve -s build y abro mi web, todas las páginas menos la principal me lanzan un error 404.

En el archivo Index.js envuelvo la llamada a App.js utilizando BrowserRouter:

  <BrowserRouter>     <App />   </BrowserRouter>, 

Y la navegación está definida en el archivo App.js utilizando react-router-dom. Se ve así:

          <Route exact path="/" component={Home} />           <Route path="/ilustraciones" component={Ilustraciones} />           <Route path="/galeria" component={Galeria} />           <Route path="/login" component={Login} />           <Route path="/visor" component={Loginvisor} />           <Route path="/visorstl" component={LoginvisorSTL} />           <Route path="/profile" component={Profile} />           <Route path="/DICOM" component={LoginVisorDICOM} /> 

Mi web, si es necesario mirar en otro lado, está aquí: https://github.com/rgomez96/Tecnolab (en la rama Develop)

¿Cómo puedo solucionar esto? No es mandatorio desplegar la web utilizando serve así que podría cambiarlo si fuera necesario.

Escondendo Páginas (Java para Desenvolvimento Web)

Estou estudando a apostila Java para Desenvolvimento Web – Caelum, mas estou com dificuldades em uma parte. Na capítulo 9.10 ESCONDENDO NOSSAS PÁGINAS eu já coloquei todas as minhas páginas no diretório WEB-INF/jsp e já alterei o trecho return”/WEB-INF/jsp/lista-contatos.jsp”; na classe ListaContatosLogic, mas não consigo acessar a jsp lista-contatos.jsp diretamente pelo endereço http://localhost:8080/fj21-agenda/lista-contatos.jsp. Vou disponibilizar meus códigos da classe ControllerServlet, ListaContatosLogic e da JSP lista-contatos.

Poderiam me ajudar a resolver?

Obrigado!

classe ControllerServlet:

package br.com.caelum.agenda.servlet;  import java.io.IOException;  import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;  import br.com.caelum.mvc.logica.Logica; @WebServlet("/mvc") public class ControllerServlet extends HttpServlet {   protected void service(HttpServletRequest request, HttpServletResponse             response) throws ServletException, IOException {     String parametro = request.getParameter("logica");     String nomeDaClasse = "br.com.caelum.mvc.logica." + parametro;      try {       Class classe = Class.forName(nomeDaClasse);       Logica logica = (Logica) classe.newInstance();       String pagina = logica.executa(request, response);       request.getRequestDispatcher(pagina).forward(request, response);      } catch(Exception e) {       throw new ServletException("A lógica de nogócios causou uma exceção", e);     }   } } 

Classe ListaContatosLogic

import java.util.List;  import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;  import br.com.caelum.agenda.dao.ContatoDao; import br.com.caelum.agenda.modelo.Contato;  public class ListaContatosLogic implements Logica {     public String executa(HttpServletRequest req, HttpServletResponse res) throws Exception {         List<Contato> contatos = new ContatoDao().getLista();         req.setAttribute("contatos", contatos);         return"/WEB-INF/jsp/lista-contatos.jsp";     } } 

jsp lista-contatos.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>  <!DOCTYPE html> <html>   <head>     <meta charset="ISO-8859-1">     <title>Insert title here</title>   </head>   <body>     <c:import url="cabecalho.jsp" />      <table><!-- percorre contatos montando as linhas da tabela -->         <c:forEach var="contato" items="$  {contatos}">             <tr>                 <td>$  {contato.nome}</td>                 <td>                                         <c:choose>                         <c:when test="$  {not empty contato.email}">                             <a href="mailto:$  {contato.email}">$  {contato.email}</a>                         </c:when>                         <c:otherwise>                             E-mail não informado                         </c:otherwise>                     </c:choose>                 </td>                 <td>$  {contato.endereco}</td>                 <td><fmt:formatDate value="$  {contato.dataNascimento.time}"                     pattern="dd/MM/yyyy" /></td>                  <td>                 <a href="mvc?logica=RemoveContatoLogic&id=$  {contato.id}">Remover</a>                 </td>             </tr>         </c:forEach>     </table>       <c:import url="rodape.jsp" />         </body> </html> 

openlims – Sem aparecer corpo nas páginas poderá ser configuração de permissões?

Bom dia,

Instalei o Open-lims para testar o sistema, at+e aqui tudo bem, mas agora deparo-me com um problema, só me aparece o header das páginas sem corpo.

Parece tudo ok, mas por alguma razão não aparece o resto da informação.

Alguém poderá dar uma ajuda.

Obrigado.

inserir a descrição da imagem aqui

Exibir o nome do usuário logado em todas páginas da minha aplicação (template)

Bom, a autenticação do login esta funcionando perfeitamente, agora eu pretendo botar o nome do funcionário logado no canto superior da tela, mas pesquisei e não achei ainda nada que funcione no meu sistema. Segue as classes

Funcionario

import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; import javax.validation.constraints.Size;  import org.hibernate.validator.constraints.NotEmpty; import org.hibernate.validator.constraints.br.CPF;  @Entity @Table(name = "tb_funcionarios") @NamedQueries({ @NamedQuery(name = "Funcionario.listar", query = "SELECT funcionario FROM Funcionario funcionario" ), @NamedQuery(name = "Funcionario.buscarPorCodigo", query = "SELECT funcionario FROM Funcionario funcionario WHERE funcionario.codigo = :codigo" ), @NamedQuery(name = "Funcionario.logar", query = "SELECT funcionario FROM Funcionario funcionario WHERE funcionario.cpf = :cpf AND funcionario.senha = :senha"), @NamedQuery(name = "Funcionario.buscarPorNome", query = "SELECT funcionario FROM Funcionario funcionario WHERE funcionario.nome = :nome" ) }) public class Funcionario {      @GeneratedValue(strategy = GenerationType.AUTO)     @Id     @Column(name = "fun_codigo")     private Long codigo;      @NotEmpty(message = "Insira o Nome")     @Column(name = "fun_nome", length = 50, nullable = false)     private String nome;       @CPF(message = "CPF Incorreto")     @Column(name = "fun_cpf", length = 14, nullable = false, unique = true)     private String cpf;      @NotEmpty(message = "Insira a Senha")     @Size(min = 5, max = 15, message = "Sua senha deve conter de 5 a 15 caracteres")     @Column(name = "fun_senha", length = 50, nullable = false)     private String senha;      @NotEmpty(message = "Insira um cargo")     @Column(name = "fun_funcao", length = 50, nullable = false)     private String funcao;      public Long getCodigo() {         return codigo;     }      public void setCodigo(Long codigo) {         this.codigo = codigo;     }      public String getNome() {         return nome;     }      public void setNome(String nome) {         this.nome = nome;     }      public String getCpf() {         return cpf;     }      public void setCpf(String cpf) {         this.cpf = cpf;     }      public String getSenha() {         return senha;     }      public void setSenha(String senha) {         this.senha = senha;     }      public String getFuncao() {         return funcao;     }      public void setFuncao(String funcao) {         this.funcao = funcao;     }      @Override     public String toString() {         return "Funcionario [codigo=" + codigo + ", nome=" + nome + ", cpf=" + cpf + ", senha=" + senha + ", funcao="                 + funcao + "]";     }      @Override     public int hashCode() {         final int prime = 31;         int result = 1;         result = prime * result + ((codigo == null) ? 0 : codigo.hashCode());         return result;     }      @Override     public boolean equals(Object obj) {         if (this == obj)             return true;         if (obj == null)             return false;         if (getClass() != obj.getClass())             return false;         Funcionario other = (Funcionario) obj;         if (codigo == null) {             if (other.codigo != null)                 return false;         } else if (!codigo.equals(other.codigo))             return false;         return true;     } } 

FuncionarioDAO

import java.util.List;  import org.hibernate.Query; import org.hibernate.Session; import org.hibernate.Transaction;  import br.com.Vendas.domain.Funcionario; import br.com.Vendas.util.HibernateUtil;  public class FuncionariosDAO {      public void salvar(Funcionario funcionario) {         Session sessao = HibernateUtil.getSessionFactory().openSession();          Transaction transacao = null;          try {             transacao = sessao.beginTransaction(); // abrindo a transação             sessao.save(funcionario);             transacao.commit(); // confirmando a transação          } catch (RuntimeException ex) {             if (transacao != null) {                 transacao.rollback(); // desfaz a transação             }          }          finally {             sessao.close();         }      }      @SuppressWarnings("unchecked")     public List<Funcionario> listar() {         Session sessao = HibernateUtil.getSessionFactory().openSession();          List<Funcionario> funcionario = null;          try {              Query consulta = sessao.getNamedQuery("Funcionario.listar");             funcionario = consulta.list();          } catch (RuntimeException ex) {             throw ex;         }          finally {             sessao.close();         }          return funcionario;     }      public Funcionario buscarPorCodigo(Long codigo) {         Session sessao = HibernateUtil.getSessionFactory().openSession();          Funcionario funcionario = null;          try {              Query consulta = sessao.getNamedQuery("Funcionario.buscarPorCodigo");             consulta.setLong("codigo", codigo);             funcionario = (Funcionario) consulta.uniqueResult();          } catch (RuntimeException ex) {             throw ex;         }          finally {             sessao.close();         }          return funcionario;     }      public Funcionario buscarPorNome(String nome) {         Session sessao = HibernateUtil.getSessionFactory().openSession();          Funcionario funcionario = null;          try {              Query consulta = sessao.getNamedQuery("Funcionario.buscarPorNome");             consulta.setString("nome", nome);             funcionario = (Funcionario) consulta.uniqueResult();          } catch (RuntimeException ex) {             throw ex;         }          finally {             sessao.close();         }          return funcionario;     }      public void excluir(Funcionario funcionario) {         Session sessao = HibernateUtil.getSessionFactory().openSession();          Transaction transacao = null;          try {             transacao = sessao.beginTransaction(); // abrindo a transação             sessao.delete(funcionario);             transacao.commit(); // confirmando a transação          } catch (RuntimeException ex) {             if (transacao != null) {                 transacao.rollback(); // desfaz a transação             }          }          finally {             sessao.close();         }      }      public Funcionario autenticar(String cpf, String senha) {         Session sessao = HibernateUtil.getSessionFactory().openSession();         Funcionario funcionario = null;          try {             // Executa a query de consulta             Query consulta = sessao.getNamedQuery("Funcionario.logar");             // Recebe os dados informados             consulta.setString("cpf", cpf);             consulta.setString("senha", senha);             // Cria consulta do funcionário             funcionario = (Funcionario) consulta.uniqueResult();         } catch (RuntimeException ex) {             throw ex;         } finally {             sessao.close();         }         return funcionario;     }      public void editar(Funcionario funcionario) {         Session sessao = HibernateUtil.getSessionFactory().openSession();          Transaction transacao = null;          try {             transacao = sessao.beginTransaction(); // abrindo a transação              sessao.update(funcionario);             transacao.commit(); // confirmando a transação          } catch (RuntimeException ex) {             if (transacao != null) {                 transacao.rollback(); // desfaz a transação             }          }          finally {             sessao.close();         }      } } 

FuncionarioBean

import java.io.IOException; import java.util.ArrayList;  import org.hibernate.Session; import org.omnifaces.util.Faces; import org.omnifaces.util.Messages;  import javax.faces.bean.ManagedBean; import javax.faces.bean.SessionScoped; import javax.faces.bean.ViewScoped; import javax.faces.context.FacesContext;  import br.com.Vendas.DAO.FuncionariosDAO;  import br.com.Vendas.domain.Funcionario; import br.com.Vendas.util.JSFUtil;  @ManagedBean(name = "MBFuncionarios") @ViewScoped public class FuncionariosBean {     private Funcionario funcionario = new Funcionario();     private FuncionariosDAO fdao = new FuncionariosDAO();      private ArrayList<Funcionario> itens;     private ArrayList<Funcionario> itensFiltrados;     private String acao;     private String nome;     private Long codigo;      public Long getCodigo() {         return codigo;     }      public void setCodigo(Long codigo) {         this.codigo = codigo;     }      public String getAcao() {         return acao;     }      public void setAcao(String acao) {         this.acao = acao;     }      public Funcionario getFuncionario() {          return funcionario;     }      //     public void setFuncionario(Funcionario funcionario) {         this.funcionario = funcionario;     }      public ArrayList<Funcionario> getItens() {         return itens;     }      public void setItens(ArrayList<Funcionario> itens) {         this.itens = itens;     }      public ArrayList<Funcionario> getItensFiltrados() {         return itensFiltrados;     }      public void setItensFiltrados(ArrayList<Funcionario> itensFiltrados) {         this.itensFiltrados = itensFiltrados;     }      // @PostConstruct     public void prepararPesquisa() {          try {             FuncionariosDAO fdao = new FuncionariosDAO();             itens = (ArrayList<Funcionario>) fdao.listar();          } catch (RuntimeException e) {             JSFUtil.adicionarMensagemErro("ex.getMessage()");             e.printStackTrace();         }      }      public void carregarCadastro() {          try {              if (codigo != null) {                  FuncionariosDAO fdao = new FuncionariosDAO();                  funcionario = fdao.buscarPorCodigo(codigo);              } else {                 funcionario = new Funcionario();              }          } catch (RuntimeException e) {             JSFUtil.adicionarMensagemErro("ex.getMessage()");             e.printStackTrace();         }      }      public void carregarNome() {          try {              if (nome != null) {                  FuncionariosDAO fdao = new FuncionariosDAO();                  funcionario = fdao.buscarPorNome(nome);              } else {                 funcionario = new Funcionario();              }          } catch (RuntimeException e) {             JSFUtil.adicionarMensagemErro("ex.getMessage()");             e.printStackTrace();         }      }      public void novo() {         funcionario = new Funcionario();     }      public void salvar() {          try {             FuncionariosDAO fdao = new FuncionariosDAO();             fdao.salvar(funcionario);              funcionario = new Funcionario();              JSFUtil.adicionarMensagemSucesso("Funcionário salvo com sucesso!");          } catch (RuntimeException e) {             JSFUtil.adicionarMensagemErro("ex.getMessage()");             e.printStackTrace();         }     }      public void excluir() {         try {             fdao.excluir(funcionario);              JSFUtil.adicionarMensagemSucesso("Funcionário excluido com sucesso!");          } catch (RuntimeException e) {             JSFUtil.adicionarMensagemErro("Não é possível excluir um funcionário que tenha uma venda associado!");             e.printStackTrace();         }     }      public void autenticar() {         try {             // Recebe login e senha do usuário e chama método DAO para autenticar             funcionario = fdao.autenticar(funcionario.getCpf(), (funcionario.getSenha()));             // Verifica se o funcionário é nulo ou diferente             if (funcionario == null) {                 JSFUtil.adicionarMensagemErro("Usuário ou senha invalida");             } else {                 // Redireciona para página principal após autenticar o funcionário.                 FacesContext.getCurrentInstance().getExternalContext().redirect("principal.xhtml");             }         } catch (IOException erro) {             erro.printStackTrace();             Messages.addGlobalError(erro.getMessage());         }     }      public void editar() {         try {             FuncionariosDAO fdao = new FuncionariosDAO();             fdao.editar(funcionario);              JSFUtil.adicionarMensagemSucesso("Funcionário editado com sucesso!");          } catch (RuntimeException e) {             JSFUtil.adicionarMensagemErro("ex.getMessage()");             e.printStackTrace();         }     } } 

Template

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"     xmlns:h="http://java.sun.com/jsf/html"     xmlns:f="http://java.sun.com/jsf/core"     xmlns:p="http://primefaces.org/ui"     xmlns:ui="http://java.sun.com/jsf/facelets">  <ui:insert name="metadata" />  <h:head>     <link rel="shortcut icon" href="../resources/images/favicon.ico" />     <h:outputStylesheet library="css" name="style.css" />     <h:outputScript library="js" name="scripts.js" />       <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />     <title>Cronus - Software de gestão</title> </h:head> <h:body>     <p:growl id="msgGlobal" />      <h:body>          <p:layout fullPage="true">              <p:layoutUnit header="Sistema de Vendas" position="north"                  resizable="false" closable="false" collapsible="false">                 <h:graphicImage url="../resources/images/sistema.jpg"/>                     <p:toolbar style="height:39px;">                     <f:facet name="left">                         <p:outputLabel value="Colocar o nome do Funcionario Logado"                             style="position: relative;left: 1360px;" />                         <p:commandButton action="/pages/autenticacao.xhtml" value="Sair"                             style="height:39px;width:90px; text-align:center;position: relative;left: 1370px;"/>                     </f:facet>                 </p:toolbar>             </p:layoutUnit>              <p:layoutUnit header="Copyright 2019 - Todos os direitos reservados. Feito por Jackson F. Magnabosco"                 position="south" resizable="false" closable="false"  collapsible="false">             </p:layoutUnit>              <p:layoutUnit header="Menu Inicial" size="200" position="west"                 resizable="false" closable="false" collapsible="false">                 <h:form>                      <p:panelMenu                         style="background-image: url('../images/sistema.jpg');">                         <p:submenu label="Arquivo">                             <p:menuitem value="Página Principal"                                 outcome="/pages/principal.xhtml" />                             <p:menuitem value="Sobre"                             outcome="/pages/sobre.xhtml" />                             <p:menuitem value="Sair"                             outcome="/pages/autenticacao.xhtml" />                         </p:submenu>                          <p:submenu label="Cadastros">                             <p:menuitem value="Produtos"                                 outcome="/pages/produtoPesquisa.xhtml" />                             <p:menuitem value="Fornecedores"                                 outcome="/pages/fornecedorPesquisa.xhtml" />                             <p:menuitem value="Funcionários"                                 outcome="/pages/funcionarioPesquisa.xhtml" />                         </p:submenu>                          <p:submenu label="Vendas">                             <p:menuitem value="Nova Venda"                                 outcome="/pages/vendaCadastro.xhtml" />                         </p:submenu>                         <p:submenu label="Relatórios"></p:submenu>                      </p:panelMenu>                  </h:form>              </p:layoutUnit>              <p:layoutUnit position="east" size="200" header="Mensagens"                 style="text-align:center;" resizable="false" closable="false "                 collapsible="true" effect="drop">             </p:layoutUnit>              <p:layoutUnit position="center" resizable="false" closable="false"                 collapsible="false">                 <ui:insert name="conteudo" />                 <h:panelGrid>                     <p:graphicImage library="images" name=".jpg" />                 </h:panelGrid>              </p:layoutUnit>         </p:layout>      </h:body> </h:body> </html> 

inserir a descrição da imagem aqui

Como abrir un archivo en java swing y que salga por paginas

Hola verán tengo un proyecto en el cual, tengo que cargar un archivo con extension .csv delimitado por punto y coma. Este lo tengo que mostrar al usuario en un jpanel o en tablas, sin embargo, el archivo contiene 234000 lineas de información sobre personas. Entonces, a la hora de cargarlo, no quiero que me salga todo el archivo de un solo con el scroll bar al lado para ir bajando, sino que me lo muestre por paginas, digamos, en la primer pagina 10 lineas, en la segunda otras 10 y así.

No sé como hacerlo ya que en internet todos salen con el scroll bar pero no tengo la menor idea de como hacerlo por paginas. Aún no tengo código pues no he empezado, por eso pido sus opiniones primero.

Agradezco su ayuda desde ya. Saludos!