小编use*_*702的帖子

AppCompatActivity而不是Activity或FragmentActivity

我一直在尝试通过导航抽屉和带有标签的滑动视图在Android中实现导航.我已经关注了Google的开发人员教程(这里这里),除非我将Activity或FragmentActivity更改为AppCompatActivity并在操作栏代码中应用其他更改,否则我无法使代码工作,例如将getActionBar更改为getSupportActionBar所以我不要获得NPE.

现在的问题是:

1-当我遵循应该按原样运行的官方教程时,为什么需要进行这些更改?

2 - 在这些情况下AppCompatActivity是否正确使用还是有更好的方法来做同样的事情?

3 - 这些情况是否与我选择的min sdk和target sdk有关?我的最小sdk是14,我的目标sdk是22.我应该尝试降低目标sdk吗?

4 - 这些情况是否与我的应用程序的样式/主题相关?这是android:theme ="@ style/AppTheme">.

对此主题的一些见解表示赞赏,所以提前感谢您.

编辑:我注意到的另一件事是我总是需要导入android.support.v7.app.ActionBar而不是android.app.ActionBar所以我没有得到NPE,即使我的min sdk高于API 11.

Edit2:我注意到开发人员指南中存在一些矛盾.因为我想使用ActionBar,所以我需要正确使用我的导入.在这个链接之后,建议我包含v7 appcompat库,但是在这之后我需要导入android.app.ActionBar,因为我的min sdk高于11.就像我之前说的那样,使用android.app.ActionBar产生NPE,所以我该怎么办?

android android-activity android-fragmentactivity appcompatactivity

7
推荐指数
0
解决办法
4698
查看次数

Restful webservices - NoClassDefFoundError:org/glassfish/jersey/ExtendedConfig

所以我在这个线程中创建了webservice ,最后我设法解决了这个问题.现在我正在尝试使用这个Web服务.

我在Netbeans上创建了一个新的Web项目,我正在使用Apache Tomcat.这是使用Web服务的代码.我已经通过一些教程来生成这段代码.

package com.client;

import java.net.URI;

import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.WebTarget;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.UriBuilder;

import org.glassfish.jersey.client.ClientConfig;

public class HelloClient {


  public void consumeRest(){

    ClientConfig config = new ClientConfig();

    Client client = ClientBuilder.newClient(config);

    WebTarget target = client.target(getBaseURI());

    System.out.println("response");

    System.out.println(target.path("hello").path("world").request()

    .accept(MediaType.APPLICATION_JSON).get(Response.class)

    .toString());

    }


  private URI getBaseURI() {

    return UriBuilder.fromUri("http://localhost:8084/restful_example").build();

  }

} 
Run Code Online (Sandbox Code Playgroud)

我已经创建了一个主类来调用consume方法.当我运行它时,我得到这个例外:

Exception in thread "main" java.lang.NoClassDefFoundError: org/glassfish/jersey/ExtendedConfig
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at …
Run Code Online (Sandbox Code Playgroud)

java rest web-services jax-rs jersey

4
推荐指数
2
解决办法
2万
查看次数