PhotoCam primefaces

10 respostas
programaçãojsfjava
W

Olá Devs estou temdo alguns problemas para implementar este componente no meu projeto, isto foi oque fiz até o momento:
Esta é a tela -
<p:dialog widgetVar=“dialogCamera” resizable="false"
position=“center” showHeader=“false”>

<p:panelGrid columns="3" layout="grid" id="croped"
					columnClasses="ui-grid-col-4,ui-grid-col-4,ui-grid-col-4"
					styleClass="panelgrid-noborder">

					<p:panel id="camera" header="Web Cam">
						<div style="height: 240px;">
							<p:photoCam widgetVar="photoCam"
								listener="#{funcionarioController.capturar}" />
						</div>
						<p:spacer height="10" />
						<center>
							<p:commandButton value="Capturar" process="camera"
								update="croped" onclick="PF('photoCam').capture();" />
						</center>

					</p:panel>

					<p:panel id="cropped_com_foto" header="Foto Capturada"
						style="width: 360px; height: 350px;">
						<div style="height: 240px;">
							<p:imageCropper value="#{funcionarioController.imagemCortada}"
								initialCoords="225,75,300,125" aspectRatio="0.8"
								id="imageCropperFotoId"
								image="#{pageContext.servletContext.contextPath}/resources/upload/#{funcionarioController.fotoCapturada}" />
						</div>
						<p:spacer height="10" />
						<center>
							<p:commandButton id="cortar_foto" value="Cortar"
								action="#{funcionarioController.cortar}" />
						</center>
					</p:panel>

					<p:panel id="panelFotoRecortadaId" header="Foto Recortada"
						style="width: 360px; height: 350px;">
						<div style="height: 240px;">
							<p:graphicImage
								value="/resources/upload/#{funcionarioBean.fotoCortada}" />
						</div>
						<p:spacer height="10" />
						<center>
							<p:commandButton id="salvar_foto" icon="accept-16x16"
								value="Salvar" />
						</center>
					</p:panel>
				</p:panelGrid>
				<p:commandButton value="Fechar" type="button"
					onclick="PF('dialogCamera').hide()" />
			</p:dialog>

E este é o controller -
// Tirar foto com webcam

public void capturar(CaptureEvent captureEvent) {
	System.out.println("Comecar a capturar");
	byte[] data = captureEvent.getData();
    this.fotoCapturada = "capturada" + getNumeroRandomico() + ".jpg";
    
    String newFoto = servletContext.getRealPath("") + "resources" + File.separator + "upload" + File.separator + this.fotoCapturada;
    criaArquivo(newFoto, data);
    System.out.println("Caminho da foto"+data);
}

private void criaArquivo(String arquivo, byte[] dados) {
	FileImageOutputStream imageOutput;
	try {
		imageOutput = new FileImageOutputStream(new File(arquivo));
		imageOutput.write(dados, 0, dados.length);
		imageOutput.close();
		
	} catch (FileNotFoundException ex) {
		Logger.getLogger(FuncionarioController.class.getName()).log(Level.SEVERE, null, ex);
		FacesContext.getCurrentInstance().addMessage(null,
				new FacesMessage(FacesMessage.SEVERITY_ERROR, "Caminho nÃo encontrado!", "Erro"));
	} catch (IOException ex) {
		Logger.getLogger(FuncionarioController.class.getName()).log(Level.SEVERE, null, ex);
		FacesContext.getCurrentInstance().addMessage(null,
				new FacesMessage(FacesMessage.SEVERITY_ERROR, "Erro ao criar arquivo!", "Erro"));
	}
}


 private String getNumeroRandomico() {
        int i = (int) (Math.random() * 10000);
        return String.valueOf(i);
    }
 O problema é quando vou tirar foto e ele acessa o método capturar nesta linha  String newFoto = servletContext.getRealPath("") + "resources" + File.separator + "upload" + File.separator + this.fotoCapturada;

Ele da este erro "Source not found"
Por favor alguém pode ajudar

10 Respostas

W
Fiz algumas alterações no código e agora está com este erro:

GRAVE: null

java.io.FileNotFoundException: C:\Users\Wagner\eclipse-workspace.metadata.plugins\org.eclipse.wst.server.core\tmp4\wtpwebapps\Integra_olgber\C:\Users\Wagner\eclipse-workspace\Integra_olgber\WebContent\resources\imagens\capturada5967.png (A sintaxe do nome do arquivo, do nome do diretório ou do rótulo do volume está incorreta)

at java.io.RandomAccessFile.open0(Native Method)

at java.io.RandomAccessFile.open(Unknown Source)

at java.io.RandomAccessFile.(Unknown Source)

at javax.imageio.stream.FileImageOutputStream.(Unknown Source)

at br.com.integra_olgber.controller.FuncionarioController.criaArquivo(FuncionarioController.java:332)

at br.com.integra_olgber.controller.FuncionarioController.capturar(FuncionarioController.java:325)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.el.parser.AstValue.invoke(AstValue.java:279)

at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:273)

at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

at org.primefaces.component.photocam.PhotoCam.broadcast(PhotoCam.java:185)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:122)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:169)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:48)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:205)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:120)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:64)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:53)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)

at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Unknown Source)
Não importa o caminho que eu coloque sempre acontece este erro, ele precisa de algum .jar especifico?
M

A exceção é clara.
Esta dando FileNotFoundException, ou seja, arquivo não encontrado

Tem certeza que é esse o caminho? Com duas vezes o C:?

W

Exatamente, ele mostra isso independente oque eu coloque nele veja a classe:
public void capturar(CaptureEvent captureEvent) {

fotoCapturada = "capturada" + getNumeroRandomico() + ".png";
        
    String newFoto = servletContext.getRealPath("") + File.separator + "photocam" + File.separator + fotoCapturada ;
    criaArquivo(newFoto, captureEvent.getData());
   
}
M

Você chegou a printar a variável arquivo do método criaArquivo?

Não deveria ter um File.separator antes de resources?

String newFoto = servletContext.getRealPath("") + "resources"

servletContext.getRealPath() retorna o que?

Eu lembro que com externalContext as imagens eram apagadas quando o servidor reiniciava, ai foi necessário salvar em uma pasta fora do projeto e utilizar a classe StreamedContent para ler essa imagem e então referenciar o streamedContent no p:graphicImage

W

Amigo consegui salvar a imagem no diretório fiz o seguinte:
Baixei o primefaces6.0_source.jar que não estava no projeto com isso ele parou de mostrar o caminho duas vezes, depois criei a pasta photocam nesse caminho C:\Users\Wagner\eclipse-workspace.metadata.plugins\org.eclipse.wst.server.core\tmp4\wtpwebapps\Integra_olgber\photocam.
Como estava mostrando ele não encontrava esta pasta, criando manualmente o problema foi resolvido.

W

Precisei dar um clean no projeto agora não está funcionando, voltei pra estaca zero. Essa linha deveria criar as pastas certo
"String newFoto = servletContext.getRealPath("") + File.separator + “imagens” + File.separator + “tmp” + File.separator + fotoCapturada;"
Se alguém tiver um outro exemplo para capturar imagens com jsf por favor poderia me mostrar

W

Realmente agora não sei por que parou de chamar o método para capturar imagem segue o codígo:
Web cam -
<p:dialog widgetVar=“dialogCamera” resizable=“false” id="camera"
position=“center” showHeader=“true” modal=“true” header=“Web Cam”>

<p:photoCam widgetVar="photoCam" 
						listener="#{funcionarioController.capturar}"
						update="painel" />
						
					<p:commandButton value="Capturar" 
						onclick="PF('photoCam').capture();" process="@this" 
                                                  onsuccess="PF('dialogCamera').hide()" />
			
					<p:commandButton value="Fechar" type="button"
					onclick="PF('dialogCamera').hide()" />
					
			</p:dialog>

Controller -

public void capturar(CaptureEvent captureEvent) {

System.out.println("Iniciar Captura");
	
	fotoCapturada = "capturada" + getNumeroRandomico() + ".png";
	servletContext = (ServletContext) FacesContext.getCurrentInstance().getExternalContext().getContext();
	String newFoto = servletContext.getRealPath("") + File.separator + "resources" + File.separator + "imagens"
			+ File.separator + fotoCapturada;
	
	System.out.println("Criando Arquivo");
		
	criarArquivo(newFoto, captureEvent.getData());
	System.out.println("Arquivo Criado");
}

public void criarArquivo(String arquivo, byte[] dados) {
	
	FileImageOutputStream imageOutput;
	try {
		imageOutput = new FileImageOutputStream(new File(arquivo));
		imageOutput.write(dados, 0, dados.length);
		imageOutput.close();

	} catch (FileNotFoundException ex) {
		Logger.getLogger(FuncionarioController.class.getName()).log(Level.SEVERE, null, ex);
		FacesContext.getCurrentInstance().addMessage(null,
				new FacesMessage(FacesMessage.SEVERITY_ERROR, "Caminho não encontrado!" + ex, "Erro"));
	} catch (IOException ex) {
		Logger.getLogger(FuncionarioController.class.getName()).log(Level.SEVERE, null, ex);
		FacesContext.getCurrentInstance().addMessage(null,
				new FacesMessage(FacesMessage.SEVERITY_ERROR, "Erro ao criar arquivo!", "Erro"));
	}

}

private String getNumeroRandomico() {
	int i = (int) (Math.random() * 10000);
	return String.valueOf(i);
}
Erro  -

ADVERTÊNCIA: /paginas/CadastroFuncionario.xhtml @268,26 listener="#{funcionarioController.capturar}": java.lang.NullPointerException

javax.el.ELException: /paginas/CadastroFuncionario.xhtml @268,26 listener="#{funcionarioController.capturar}": java.lang.NullPointerException

at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:111)

at org.primefaces.component.photocam.PhotoCam.broadcast(PhotoCam.java:185)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:122)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:169)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:48)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:205)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:120)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:64)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:53)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)

at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Unknown Source)

Caused by: java.lang.NullPointerException

at br.com.integra_olgber.controller.FuncionarioController.capturar(FuncionarioController.java:322)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.el.parser.AstValue.invoke(AstValue.java:279)

at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:273)

at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

 62 more
dez 12, 2018 1:14:12 PM com.sun.faces.context.AjaxExceptionHandlerImpl handlePartialResponseError

GRAVE: java.lang.NullPointerException

at br.com.integra_olgber.controller.FuncionarioController.capturar(FuncionarioController.java:322)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.apache.el.parser.AstValue.invoke(AstValue.java:279)

at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:273)

at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)

at org.primefaces.component.photocam.PhotoCam.broadcast(PhotoCam.java:185)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:316)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)

at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:114)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:122)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:169)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:48)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:158)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:205)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:120)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:64)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:53)

at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:91)

at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:213)

at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:176)

at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:347)

at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:263)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:110)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:506)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:962)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:445)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1115)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:637)

at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)

at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

at java.lang.Thread.run(Unknown Source)
M

Essa linha no caso define o caminho da pasta.

Deve ser pq no botão Capturar você colocou process="@this" e eu imagino que você queira processar a photoCam junto

W

Pois é também pensei nisso mas deixei assim:
<p:dialog widgetVar=“dialogCamera” resizable=“false” id="camera"
position=“center” showHeader=“true” header=“Web Cam”>

<p:photoCam widgetVar="photoCam"
					listener="#{funcionarioController.capturar}" update="painel" />
				
				<p:panelGrid columns="2" layout="grid" style="padding:10px"
					columnClasses="ui-grid-col-6,ui-grid-col-6"
					styleClass="panelgrid-noborder">
					
					<p:commandButton value="Capturar"
						onclick="PF('photoCam').capture();" process="camera"
						oncomplete="PF('dialogCamera').hide()" />

					<p:commandButton value="Fechar" type="button"
						onclick="PF('dialogCamera').hide()" />
						
				</p:panelGrid>
			</p:dialog>

Mesmo erro ainda

W

Bom dia, consegui fazer funcionar a dúvida agora é sobre as imagens capturadas, como remove-las depois de usar ou seja não queria deixar lixo na pasta que estão sendo alocadas.

Criado 10 de dezembro de 2018
Ultima resposta 13 de dez. de 2018
Respostas 10
Participantes 2