Está a ver a documentação do Apigee e do Apigee Hybrid.
Ver documentação do
Apigee Edge.
InvalidResourceUrlFormat
Mensagem de erro
A implementação de um proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Deploying Revision revision_number to environment Invalid resource url format. Resource url is invalid_URL.
Exemplo de mensagem de erro
Error Deploying Revision 1 to test
Invalid resource url format. Resource url is jsc:add_variables.js.
Captura de ecrã de exemplo
Causa
Se o formato do URL do recurso especificado no elemento <ResourceURL>
ou <IncludeURL>
da política de JavaScript for inválido, a implementação do proxy de API falha.
O formato correto para especificar o URL do recurso é o seguinte:
<ResourceURL>jsc://<file_name>.js</ResourceURL>
<IncludeURL>jsc://<file_name>.js</IncludeURL>
Por exemplo, se o elemento <ResourceURL>
for especificado conforme mostrado abaixo, a implementação do proxy da API falha porque não segue o padrão prescrito:
<ResourceURL>jsc:add_variables.js</ResourceURL>
Diagnóstico
Identifique o formato de URL de recurso inválido usado na política de JavaScript. Pode encontrar estas informações na mensagem de erro. Por exemplo, no seguinte erro, o formato de URL do recurso inválido é
jsc:add_variables.js
.Error Deploying Revision 1 to test Invalid resource url format. Resource url is jsc:add_variables.js.
Examine todas as políticas de JavaScript no proxy de API específico onde ocorreu a falha. Se existir alguma política de JavaScript em que o URL do recurso especificado no elemento
<ResourceURL>
ou<IncludeURL>
corresponda à entrada inválida identificada no passo n.º 1 acima, essa é a causa do erro.Por exemplo, a política seguinte especifica o URL do recurso como
jsc:add_variables.js
, que corresponde ao que está na mensagem de erro:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>jsc:add_variables.js</ResourceURL> </Javascript>
Uma vez que o URL do recurso é especificado como
jsc:add_variables.js
, que é inválido, a implementação do proxy de API falha com o erro:Invalid resource url format. Resource url is jsc:add_variables.js.
Resolução
Certifique-se de que o formato do URL do recurso especificado no elemento <ResourceURL>
ou <IncludeURL>
da política de JavaScript é válido. Por exemplo:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable">
<DisplayName>js-TotalVariable</DisplayName>
<Properties/>
<ResourceURL>jsc://add_variables.js</ResourceURL>
</Javascript>
InvalidResourceUrlReference
Mensagem de erro
A implementação de um proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Deploying Revision revision_number to environment Invalid resource url ref invalid_reference in policy policy_name in org_name
Exemplo de mensagem de erro
Error Deploying Revision 8 to test
Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
Captura de ecrã de exemplo
Causa
Se os elementos <ResourceURL>
e <IncludeURL>
fizerem referência a um ficheiro JavaScript que não existe, a implementação do proxy da API falha.
Se estiver a implementar um pacote de proxy a partir do seu computador local, os ficheiros de origem JavaScript têm de ser armazenados em /apiproxy/resources/jsc
. Neste caso, os ficheiros de origem estão no âmbito do proxy de API.
Na IU do Apigee, os ficheiros de origem JavaScript aparecem em jsc na secção Scripts do painel Navigator do editor de proxy de API. Também pode armazenar ficheiros de recursos em repositórios ao nível do ambiente (para disponibilizar código JavaScript a todos os proxies numa organização ou num ambiente, por exemplo).
Se não for possível encontrar algum dos ficheiros de recursos especificados na política em nenhum dos âmbitos disponíveis (proxy ou ambiente), ocorre este erro.
Diagnóstico
Identifique a política de JavaScript onde ocorreu o erro e que contém a referência do URL do recurso inválido. Pode encontrar estas informações na mensagem de erro. Por exemplo, no erro seguinte, o nome da política é
js-TotalVariable
e a referência do URL do recurso inválido éjsc://dependent_js.js
.Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
Verifique se a referência do URL do recurso especificada na política de JavaScript com falha corresponde ao valor identificado na mensagem de erro (passo n.º 1 acima). Por exemplo, a seguinte política especifica a referência do URL do recurso como
jsc://dependent_js.js
, que corresponde ao que está na mensagem de erro:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>jsc://add_variables.js</ResourceURL> <IncludeURL>jsc://dependent_js.js</IncludeURL> </Javascript>
Verifique se o ficheiro de origem identificado no ficheiro do passo n.º 1 faz parte do pacote de proxy de API específico ou existe no âmbito do ambiente.
- Para verificar se o ficheiro faz parte do pacote de proxy de API específico, siga um dos passos abaixo:
- Na IU do Apigee, verifique se este ficheiro se encontra na secção Scripts do proxy de API.
- Transfira o pacote do proxy da API e pesquise se o ficheiro existe.
- Se o ficheiro não fizer parte do pacote de proxy de API específico, verifique se existe ao nível do ambiente. Pode usar a API Resource Files para esta investigação.
Se o ficheiro não existir ao nível do proxy de API ou do ambiente, essa é a causa do erro.
No exemplo descrito acima, recorde que o nome do ficheiro JavaScript inválido é
dependent_js.js
. Na captura de ecrã abaixo, repare que o ficheiro especificado como um URL de recurso na política não aparece na secção Scripts. Por conseguinte, não faz parte do proxy da API. Se o ficheiro também não existir ao nível do ambiente, a implementação do proxy de API falha com o erro:Invalid resource url ref jsc://dependent_js.js in policy js-TotalVariable in aprabhashankar-eval
- Para verificar se o ficheiro faz parte do pacote de proxy de API específico, siga um dos passos abaixo:
Resolução
Certifique-se de que os ficheiros JavaScript especificados nos elementos <ResourceURL>
e <IncludeURL>
referem-se a um ficheiro válido que existe ao nível do proxy de API ou do ambiente.
Para corrigir a política de JavaScript de exemplo apresentada acima, adicione o ficheiro dependent_js.js
ao pacote do proxy de API. Na captura de ecrã abaixo, pode ver que os ficheiros JavaScript especificados nos elementos <ResourceURL>
e <IncludeURL>
são visíveis na secção Scripts do pacote do proxy de API.
WrongResourceType
Mensagem de erro
A implementação de um proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Deploying Revision revision_number to environment Resource JavaScript_file is the wrong type. It is invalid_type: but JavaScript steps use type jsc:.
Exemplo de mensagem de erro
Error Deploying Revision 2 to test
Resource js_checkType.js is the wrong type. It is node: but JavaScript steps use type jsc:.
Captura de ecrã de exemplo
Causa
Este erro ocorre durante a implementação se os elementos <ResourceURL>
e <IncludeURL>
da política de JavaScript fizerem referência a qualquer tipo de recurso que não seja jsc (ficheiro JavaScript).
Por exemplo, se o elemento <IncludeURL>
for declarado conforme mostrado abaixo, a implementação do proxy da API falha:
<IncludeURL>node://javascript-dependency.js</IncludeURL>
Isto acontece porque se refere a um tipo de recurso node
incorreto.
Diagnóstico
Identifique o tipo de recurso inválido usado na política de JavaScript. Pode encontrar estas informações na mensagem de erro. Por exemplo, no seguinte erro, o tipo de recurso inválido é
node
.Resource js_checkType.js is the wrong type. It is node: but JavaScript steps use type jsc:.
Examine todas as políticas de JavaScript no proxy de API específico onde ocorreu a falha. Se existir alguma política de JavaScript em que o recurso especificado no elemento
<ResourceURL>
ou<IncludeURL>
corresponda ao tipo de recurso inválido identificado no passo n.º 1 acima, essa é a causa do erro.Por exemplo, a seguinte política especifica o tipo de recurso como
node
, que corresponde ao que está na mensagem de erro:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable"> <DisplayName>js-TotalVariable</DisplayName> <Properties/> <ResourceURL>node://js_checkType.js</ResourceURL> <IncludeURL>jsc://javascript-dependency.js</IncludeURL> </Javascript>
Uma vez que o tipo de recurso está especificado como
node
, que é inválido, a implementação do proxy de API falha com o erro:Resource js_checkType.js is the wrong type. It is node: but JavaScript steps use type jsc:.
Resolução
Certifique-se de que os elementos <ResourceURL>
e <IncludeURL>
na política de JavaScript referem-se sempre ao tipo de recurso jsc
.
Para corrigir o exemplo apresentado acima, modifique o elemento <ResourceURL>
para ter o tipo de recurso jsc
.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-TotalVariable">
<DisplayName>js-TotalVariable</DisplayName>
<Properties/>
<ResourceURL>jsc://js_checkType.js</ResourceURL>
<IncludeURL>jsc://javascript-dependency.js</IncludeURL>
</Javascript>
NoResourceURLOrSource
Mensagem de erro
A implementação de um proxy de API através da IU ou da API Apigee falha com esta mensagem de erro:
Error Saving Revision revision_number Bundle is invalid. Errors:[Entity : Policy-policy_name, No ResourceURL or Source;].
Exemplo de mensagem de erro
Error Saving Revision 10
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Captura de ecrã de exemplo
Causa
A implementação da política de JavaScript pode falhar com este erro nos seguintes cenários:
- Se o elemento
<ResourceURL>
não for declarado ou se o URL do recurso não estiver definido neste elemento. O elemento<ResourceURL>
é um elemento obrigatório. - O elemento
<IncludeURL>
é declarado, mas o URL do recurso não está definido neste elemento. O elemento<IncludeURL>
é opcional, mas, se for declarado, o URL do recurso tem de ser especificado no elemento<IncludeURL>
.
Por exemplo, se o elemento <IncludeURL>
for declarado conforme mostrado abaixo, a implementação do proxy da API falha:
<IncludeURL></IncludeURL>
Diagnóstico
Identifique a política de JavaScript onde ocorreu o erro. Pode encontrar estas informações na mensagem de erro. Por exemplo, no seguinte erro, o nome da política é
Policy-js-example
:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
No ficheiro XML de políticas de JavaScript com falhas, faça as seguintes verificações:
- O elemento
<ResourceURL>
tem de ser declarado e ter o URL do recurso definido. - Se o elemento
<IncludeURL>
for declarado, tem de especificar um URL de recurso no respetivo interior. A declaração do elemento<IncludeURL>
é opcional.
Se alguma das verificações acima falhar, significa que essa é a causa do erro.
Exemplo 1: a seguinte política não tem o elemento
<ResourceURL>
declarado:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> </Javascript>
Uma vez que o elemento
<ResourceURL>
não está declarado, a implementação do proxy de API falha com o erro:Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Exemplo 2: a seguinte política tem um elemento
<IncludeURL>
vazio.- O elemento
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example">
<DisplayName>js-example</DisplayName>
<Properties/>
<ResourceURL>jsc://check_var.js</ResourceURL>
<IncludeURL></IncludeURL>
</Javascript>
Uma vez que o elemento <IncludeURL>
não tem o URL do recurso, a implementação do proxy de API falha com o erro:
Bundle is invalid. Errors:[Entity : Policy-js-example, No ResourceURL or Source;].
Resolução
Certifique-se de que a política de JavaScript cumpre os seguintes requisitos:
- O elemento
<ResourceURL>
é declarado e o URL do recurso é definido neste elemento. O elemento<ResourceURL>
é um elemento obrigatório. Se o elemento
<IncludeURL>
for declarado, o URL do recurso de inclusão tem de ser definido neste elemento. O elemento<IncludeURL>
é opcional, mas, se for declarado, o URL do recurso tem de ser especificado no elemento<IncludeURL>
.Para corrigir o exemplo 1 apresentado acima, inclua o elemento
<ResourceURL>
com um ficheiro JavaScript válido:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> <ResourceURL>jsc://check_var.js</ResourceURL> </Javascript>
Para corrigir o exemplo 2 apresentado acima, inclua um ficheiro JavaScript válido no elemento
<IncludeURL>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <Javascript async="false" continueOnError="false" enabled="true" timeLimit="200" name="js-example"> <DisplayName>js-example</DisplayName> <Properties/> <ResourceURL>jsc://check_var.js</ResourceURL> <IncludeURL>jsc://js_dependency.js</IncludeURL> </Javascript>