我的javascript行:
$('#name').show();
Run Code Online (Sandbox Code Playgroud)
我的webdriver代码行:
wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("name"))).sendKeys("Some Name");
Run Code Online (Sandbox Code Playgroud)
当我运行测试时,它会抛出以下异常:
WebDriverException: unknown error: cannot focus element
Run Code Online (Sandbox Code Playgroud)
所以,我一直在寻找解决方案.铬谷歌代码网站报告了一些问题.关于使用有很多建议JavaScriptExecutor.但它对我来说似乎不是一个更好的解决方案,因为它可以制作依赖于浏览器的代码.
我需要使用大量条件连接和 where 子句进行条件查询,在这种情况下,代码往往会变得复杂并且可能会产生重复连接。
例如,我有以下表和 JPA 实体的结构:
ACCOUNT
ACCOUNT_ID
ACCOUNT_TYPE
PERSON
NAME
AGE
ACCOUNT_ID ( FK TO ACCOUNT )
ADDRESS_ID ( FK TO ADDRESS )
ADDRESS
ADDRESS_ID
LOCATION
COUNTRY
Run Code Online (Sandbox Code Playgroud)
所以假设我使用静态元模型实现来应用条件查询。
这是可以生成重复连接的错误代码示例:
CriteriaBuilder cb = entityManager.getCriteriaBuilder();
CriteriaQuery<Account> cq = cb.createQuery(Account.class);
cq.select(accountRoot).where(
cb.and(
cb.equal(accountRoot.join(Account_.person).get(Person_.name),"Roger"),
cb.greaterThan(accountRoot.join(Account_.person).get(Person_.age),18),
cb.equal(accountRoot.join(Account_.person)
.join(Person_.address).get(Address_.country),"United States")
)
)
TypedQuery<Account> query = entityManager.createQuery(cq);
List<Account> result = query.getResultList();
Run Code Online (Sandbox Code Playgroud)
上面的代码将生成一个具有同一个表的多个连接的 SQL:
Select
account0_.account_id as account1_2_,
account0_.account_type as account2_2_
from
account account0_
inner join
person person1_
on account0_.account_id=person1_.account_id
inner join
address address2_
on person1_.address_id=address2_.address_id
inner …Run Code Online (Sandbox Code Playgroud) 按照 RFC 6749 的本节,授权服务器不得为隐式授权流颁发刷新令牌。
https://www.rfc-editor.org/rfc/rfc6749#page-35
我计划在单页面应用程序中使用带有刷新令牌的隐式授予流程,避免每次访问令牌过期时为用户请求新的授权过程。
有人能解释一下 RFC 中这种限制的原因吗?
谢谢 :)