Inquiridor
Erro no Evento

Pergunta
-
Quando clico no meu botão que deveria chamar o evento aparece o seguinte erro em tela :
Não é possível encontrar o recurso.
Descrição: HTTP 404. O recurso que você está procurando (ou uma de suas dependências) não pôde ser removido, seu nome foi alterado ou está temporariamente indisponível. Examine o URL e certifique-se de que está digitado corretamente.
URL solicitada: /permissao_usuario/admin/menu.aspx
<p>Bruno<br/> <br/> <a href="http://grou.ps/dotnetcoders" target="_blank" title=".Net Coders - comunidade sobre desenvolvimento"><img src="http://leolosi.files.wordpress.com/2013/08/origlogo.png"></a> </p>
Todas as Respostas
-
-
Se está usando um botão para disparar um evento e não um link (LinkButton), verifique se o evento associado ao botão está com a assinatura e com o modificador de acesso correto para ser acessível (protected/public) no code behind, conforme exemplo:
protected void botaoTeste_Click(Object sender, EventArgs e) { ... }
Diego Cotini do Couto - MCTS .NET Framework 3.5, ASP.NET Applications
-
-
-
-
-
Segue os códigos :
protected void btnUsuario_Click(object sender, EventArgs e){
if (LtbUsuario.SelectedItem == null)
return;
ListItem itemSelecionado = LtbUsuario.SelectedItem;
if (!LtbUsuarioSelecionado.Items.Contains(itemSelecionado))
{
itemSelecionado.Selected = false;
LtbUsuarioSelecionado.Items.Add(itemSelecionado);
LtbUsuario.Items.Remove(itemSelecionado);
}
else
{
Response.Write("<script>alert('Usurio informado ja se encontra na relao');</script>");
}
}
<asp:Button ID="btnUsuario" runat="server" Height="44px" OnClick="btnUsuario_Click"
Style="background-image: url(../images/botao_proximo.jpg)" Width="44px" />
-
-
Segue os códigos :
Pior que não tem nada no código que possa gerar um 404, copia o código do LOAD também ai.
protected void btnUsuario_Click(object sender, EventArgs e){
if (LtbUsuario.SelectedItem == null)
return;
ListItem itemSelecionado = LtbUsuario.SelectedItem;
if (!LtbUsuarioSelecionado.Items.Contains(itemSelecionado))
{
itemSelecionado.Selected = false;
LtbUsuarioSelecionado.Items.Add(itemSelecionado);
LtbUsuario.Items.Remove(itemSelecionado);
}
else
{
Response.Write("<script>alert('Usurio informado ja se encontra na relao');</script>");
}
}
<asp:Button ID="btnUsuario" runat="server" Height="44px" OnClick="btnUsuario_Click"
Style="background-image: url(../images/botao_proximo.jpg)" Width="44px" />
-
Faz um teste: crie um novo botão, coloque o mesmo código do evento deste botão que está gerando problema e verifique se vai executar normalmente.
Diego Cotini do Couto - MCTS .NET Framework 3.5, ASP.NET Applications
- Sugerido como Resposta Durval Ramos terça-feira, 8 de outubro de 2013 00:36
-
Segue :
protected void Page_Load(object sender, EventArgs e)
{
DataTable dados = new DataTable();
string usr_codigo = null;
string varConteudo = "", varCodArquivo = "", varAcao = "", varMenuConteudo = "";
string varSql = "", varMetaUrl = "", varBancoConteudo = "", varNomeArquivo = "";
String savePath, savePath2;
string HOSTNAME = HttpContext.Current.Server.MachineName;
switch (HOSTNAME)
{
case "TLPE-INTL-WEB04":
savePath = @"c:\InetPub\wwwroot\extranet\docs\"; break;
default:
savePath = @"e:\home\extranet7\Web\docs\"; break;
}
varConteudo = Request["codConteudo"];
varAcao = Request["txtAcao"];
if (Request["codConteudo"] != null)
{
Session["ssCodConteudo"] = varConteudo;
}
if (Session["codigo"] == null || Session["adminAccess"] == null)
{
Response.Redirect("index.aspx");
}
//Carrega tela de edio
if ((varAcao == "editar") || (varAcao == "inserir"))
{
areaConteudoEdicao.Visible = true;
areaConteudoLista.Visible = false;
//Se for Edio
if (Request["id"] != null)
{
varCodArquivo = Request["id"];
string[] conteudoBanco = showArquivo(varCodArquivo);
varBancoConteudo += "\n\tdocument.formulario.codConteudo.value = '" + Session["ssCodConteudo"] + "';";
varBancoConteudo += "\n\tdocument.formulario.txtTitulo.value = '" + conteudoBanco[2] + "';";
}
varBancoConteudo += "\n\tdocument.formulario.selAtivo.value = '" + conteudoBanco[5] + "';";
if (varAcao == "editar")
{
varBancoConteudo += "document.getElementById(\"divNomeArquivo\").innerHTML = \"<strong>Nome do arquivo no ar: </strong>" + conteudoBanco[3] + "\";";
varBancoConteudo += "\n\tdocument.formulario.txtLastFile.value = '" + conteudoBanco[3] + "';";
varBancoConteudo += "\n\tdocument.formulario.txtLastType.value = '" + conteudoBanco[4] + "';";
//Se for amostra
if (conteudoBanco[3].Contains("amostra_"))
{
varBancoConteudo += "\n\tdocument.formulario.txtAmostra.checked = true;";
}
}
varBancoConteudo = "<script language=\"JavaScript\">" + varBancoConteudo + "</script>";
hidJSEdita.InnerHtml = varBancoConteudo;
dados = dbFun.nei_readUsu("[PROC_S_USUARIO]" + varCodArquivo);
LtbUsuario.DataSource = dados;
LtbUsuario.DataTextField = "usr_nome";
LtbUsuario.DataValueField = "usr_codigo";
LtbUsuario.DataBind();
dados = dbFun.nei_readUsu("[PROC_S_USUARIO_ARQUIVO] " + varCodArquivo);
LtbUsuarioSelecionado.DataSource = dados;
LtbUsuarioSelecionado.DataTextField = "usr_nome";
LtbUsuarioSelecionado.DataValueField = "usr_codigo";
LtbUsuarioSelecionado.DataBind();
}
//Prepara a prxima ao
if (varAcao == "editar")
{
txtAcao.Value = "editarok";
txtCodigo.Value = varCodArquivo;
codConteudo.Value = varConteudo;
}
else
{
txtAcao.Value = "inserirok";
txtCodigo.Value = "0";
codConteudo.Value = varConteudo;
}
//Salva a edio
}
else if (varAcao == "editarok")
{
areaConteudoEdicao.Visible = false;
areaConteudoLista.Visible = false;
areaConteudoMensagem.Visible = true;
//Remove o arquivo anterior
varNomeArquivo = savePath + fn.RetiraCaracteres(Request["txtLastType"], "") + "\\" + fn.RetiraCaracteres(Request["txtLastFile"], "");
if (Request["txtLastType"] != "")
{
//File.Delete(varNomeArquivo);
}
//Sobe o arquivo
if (cxarquivo.HasFile)
{
varNomeArquivo = cxarquivo.FileName;
varNomeArquivo = varNomeArquivo.Replace(" ", "_");
//Se for Amostra NEI
if (Request["txtAmostra"] != null) { varNomeArquivo = "amostra_" + varNomeArquivo; }
savePath += Request["txtTipo"] + "\\" + varNomeArquivo;
cxarquivo.SaveAs(savePath);
}
else
{
varNomeArquivo = "";
}
varSql += "update tb_conteudo_arquivos set ";
varSql += "ctd_codigo = '" + fn.SomenteNumero(varConteudo) + "', ";
varSql += "ctd_arquivo_titulo = '" + fn.RetiraCaracteres(Request["txtTitulo"], "") + "', ";
varSql += "ctd_arquivo_nome = '" + fn.RetiraCaracteres(varNomeArquivo, "") + "', ";
varSql += "ctd_arquivo_tipo = '" + fn.RetiraCaracteres(Request["txtTipo"], "") + "', ";
varSql += "ctd_fa = '" + fn.SomenteNumero(Request["selAtivo"]) + "' ";
varSql += "where ctd_codigo_arquivo = '" + fn.SomenteNumero(Request["txtCodigo"]) + "'";
dbFun.nei_writeQuery(varSql);
varSql = "DELETE FROM [tb_arquivo_usuario] where ctd_codigo_arquivo = '" + fn.SomenteNumero(Request["txtCodigo"]) + "'";
dbFun.nei_writeQuery(varSql);
if (LtbUsuarioSelecionado.Items.Count != 0)
{
usr_codigo = null;
//Parte responsvel por inserir o usurio responsvel pelo arquivo
for (int i = 0; i < LtbUsuarioSelecionado.Items.Count; i++)
{
usr_codigo = LtbUsuarioSelecionado.Items[i].Value;
varSql = "INSERT INTO [tb_arquivo_usuario] ";
varSql += "([ctd_codigo_arquivo] ";
varSql += ",[usr_codigo]) ";
varSql += "VALUES( ";
varSql += fn.SomenteNumero(Request["txtCodigo"]) + ",";
varSql += usr_codigo + ")";
dbFun.nei_writeQuery(varSql);
}
}
varMetaUrl = "conteudoArquivos.aspx?codConteudo=" + varConteudo;
areaConteudoMensagem.InnerHtml = "<span id='alertaSucesso'>A atualizao foi feita com sucesso</span>" + "<meta http-equiv='Refresh' content='2;url=" + varMetaUrl + "' />";
}
else if (varAcao == "inserirok")
{
areaConteudoEdicao.Visible = false;
areaConteudoLista.Visible = false;
areaConteudoMensagem.Visible = true;
//Sobe o arquivo
if (cxarquivo.HasFile)
{
varNomeArquivo = cxarquivo.FileName;
varNomeArquivo = varNomeArquivo.Replace(" ", "_");
//Se for Amostra NEI
if (Request["txtAmostra"] != null) { varNomeArquivo = "amostra_" + varNomeArquivo; }
savePath += Request["txtTipo"] + "\\" + varNomeArquivo;
cxarquivo.SaveAs(savePath);
}
else
{
varNomeArquivo = "";
}
varSql += "insert into tb_conteudo_arquivos ";
varSql += "(ctd_codigo, ctd_arquivo_titulo, ctd_arquivo_nome, ctd_arquivo_tipo, ctd_fa) values (";
varSql += "'" + fn.SomenteNumero(varConteudo) + "',";
varSql += "'" + fn.RetiraCaracteres(Request["txtTitulo"], "") + "',";
varSql += "'" + fn.RetiraCaracteres(varNomeArquivo, "") + "',";
varSql += "'" + fn.RetiraCaracteres(Request["txtTipo"], "") + "',";
varSql += "'" + fn.SomenteNumero(Request["selAtivo"]) + "')";
dbFun.nei_writeQuery(varSql);
Response.Write("Tst = " + varSql);
usr_codigo = null;
//Parte responsvel por inserir o usurio responsvel pelo arquivo
//Terminar
for (int i = 0; i < LtbUsuarioSelecionado.Items.Count; i++)
{
usr_codigo += LtbUsuarioSelecionado.Items[i].Value;
varSql = "INSERT INTO [tb_arquivo_usuario] ";
varSql += "([ctd_codigo_arquivo] ";
varSql += ",[usr_codigo]) ";
varSql += "VALUES( ";
varSql += fn.SomenteNumero(Request["txtCodigo"]) + ",";
varSql += usr_codigo + ")";
dbFun.nei_writeQuery(varSql);
}
varMetaUrl = "conteudoArquivos.aspx?codConteudo=" + varConteudo;
areaConteudoMensagem.InnerHtml = "<span id='alertaSucesso'>A insero foi feita com sucesso</span>" + "<meta http-equiv='Refresh' content='2;url=" + varMetaUrl + "' />";
}
else if (varAcao == "excluir")
{
areaConteudoEdicao.Visible = false;
areaConteudoLista.Visible = false;
areaConteudoMensagem.Visible = true;
//Remove arquivo
string[] conteudoBanco = showArquivo(Request["id"]);
varNomeArquivo = savePath + conteudoBanco[4] + "\\" + conteudoBanco[3];
File.Delete(varNomeArquivo);
varSql = "delete from tb_conteudo_arquivos where ctd_codigo_arquivo = '" + fn.SomenteNumero(Request["id"]) + "'";
dbFun.nei_writeQuery(varSql);
//Deletando os registros de permisso que pertence ao arquivo
varSql = "DELETE FROM [tb_arquivo_usuario] where ctd_codigo_arquivo = '" + fn.SomenteNumero(Request["id"]) + "'";
dbFun.nei_writeQuery(varSql);
varMetaUrl = "conteudoArquivos.aspx?codConteudo=" + Session["ssCodConteudo"];
areaConteudoMensagem.InnerHtml = "<span id='alertaSucesso'>A excluso foi feita com sucesso</span>" + "<meta http-equiv='Refresh' content='2;url=" + varMetaUrl + "' />";
}
else
{
areaConteudoEdicao.Visible = false;
areaConteudoLista.Visible = true;
//Lista os menus de acordo com a ferramenta
if (varConteudo != null)
{
divListaArquivos.Visible = true;
divListaArquivos.InnerHtml += listaArquivos(varConteudo) + "</table>";
}
else
{
divListaArquivos.Visible = false;
}
codConteudo.Value = varConteudo;
}
}
-
-
-
Ola,
Pelo seu fonte, o problema não deve estar relacionado ao evento do botão, e sim no Page_Load. Provavelmente só ocorre quando aciona o botão, pois deve ter alguma validação que só passa pele trecho de código com o erro quando o botão é acionado.
Coloque um Breakpoint no Page_Load, acione o botão e debugue linha a linha até identificar o ponto exato do erro; provavelmente deve ser no momento de salvar o arquivo apontando para um diretório inexistente ou sem permissões para escrita ao usuário do IIS.
Diego Cotini do Couto - MCTS .NET Framework 3.5, ASP.NET Applications
- Marcado como Resposta Giovani Cr segunda-feira, 14 de outubro de 2013 15:56
- Não Marcado como Resposta Ninho_Blink sexta-feira, 18 de outubro de 2013 22:40