Questions tagged «illegalargumentexception»

26
是否为空参数提供IllegalArgumentException或NullPointerException?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 3年前关闭。 我有一个简单的属性设置方法,null不适用于此特定属性。在这种情况下,我一直很痛苦:我应该扔IllegalArgumentException还是NullPointerException?从javadocs来看,两者似乎都合适。有某种可以理解的标准吗?还是这只是您应该做的任何事情之一,而且两者都是正确的?

23
重复ID,标签null或父ID,以及com.google.android.gms.maps.MapFragment的另一个片段
我有一个带有三个标签的应用程序。 每个选项卡都有其自己的布局.xml文件。main.xml有自己的地图片段。这是在应用程序首次启动时显示的内容。 一切正常,除了我在选项卡之间切换时。如果尝试切换回地图片段选项卡,则会收到此错误。切换到其他选项卡之间即可。 这有什么问题吗? 这是我的主类和main.xml以及我使用的相关类(您还将在底部找到错误日志) 主班 package com.nfc.demo; import android.app.ActionBar; import android.app.ActionBar.Tab; import android.app.Activity; import android.app.Fragment; import android.app.FragmentTransaction; import android.os.Bundle; import android.widget.Toast; public class NFCDemoActivity extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ActionBar bar = getActionBar(); bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); bar.setDisplayOptions(0, ActionBar.DISPLAY_SHOW_TITLE); bar.addTab(bar .newTab() .setText("Map") .setTabListener( new TabListener<MapFragment>(this, "map", MapFragment.class))); bar.addTab(bar …

30
Android片段找不到ID的视图?
我有一个片段想添加到视图中。 FragmentManager fragMgr=getSupportFragmentManager(); feed_parser_activity content = (feed_parser_activity)fragMgr .findFragmentById(R.id.feedContentContainer); FragmentTransaction xaction=fragMgr.beginTransaction(); if (content == null || content.isRemoving()) { content=new feed_parser_activity(item.getLink().toString()); xaction .add(R.id.feedContentContainer, content) .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN) .addToBackStack(null) .commit(); Log.e("Abstract", "DONE"); } 当执行此代码时,我在调试中得到以下错误。 java.lang.IllegalArgumentException: No view found for id 0x7f080011 for fragment feed_parser_activity{41882f50 #2 id=0x7f080011} feed_parser_activity是在xml中设置为Fragment布局的Fragment。 我正在使用FragmentActivity托管持有的Fragment Layout feed_parser_layout。 我在上面正确编码吗?

12
java.lang.IllegalArgumentException:在方法名称中找到无效字符。HTTP方法名称必须是令牌
在多服务器Apache Tomcat 8环境中部署应用程序时,我处于堆栈跟踪之下。我经常收到此错误,似乎正在阻止tomcat线程: INFO [http-nio-80-exec-4461] org.apache.coyote.http11.AbstractHttp11Processor.process Error parsing HTTP request header Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level. java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens at org.apache.coyote.http11.AbstractNioInputBuffer.parseRequestLine(AbstractNioInputBuffer.java:233) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1017) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:684) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1524) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1480) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown …

9
密钥必须是特定于应用程序的资源ID
为什么会出现此异常? 05-18 20:29:38.044: ERROR/AndroidRuntime(5453): java.lang.IllegalArgumentException: The key must be an application-specific resource id. 05-18 20:29:38.044: ERROR/AndroidRuntime(5453): at android.view.View.setTag(View.java:7704) 05-18 20:29:38.044: ERROR/AndroidRuntime(5453): at com.mypkg.viewP.inflateRow(viewP.java:518) 有问题的行是: ((Button) row.findViewById(R.id.btnPickContact)).setTag(TAG_ONLINE_ID,objContact.onlineid); 我将其定义为: private static final int TAG_ONLINE_ID = 1;

10
接收器未注册异常错误?
在我的开发人员控制台中,人们不断报告错误,我无法在拥有的任何电话上重现该错误。一个人留下一条消息说,当他们尝试打开我的电池服务的设置屏幕时得到了它。从错误中可以看到,它表明接收器未注册。 java.lang.RuntimeException: Unable to stop service .BatteryService@4616d688: java.lang.IllegalArgumentException: Receiver not registered: com.app.notifyme.BatteryService$BatteryNotifyReceiver@4616d9d0 at android.app.ActivityThread.handleStopService(ActivityThread.java:3164) at android.app.ActivityThread.access$3900(ActivityThread.java:129) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2173) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:143) at android.app.ActivityThread.main(ActivityThread.java:4701) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:521) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.IllegalArgumentException: Receiver not registered:com..BatteryService$BatteryNotifyReceiver@4616d9d0 at android.app.ActivityThread$PackageInfo.forgetReceiverDispatcher(ActivityThread.java:805) at android.app.ContextImpl.unregisterReceiver(ContextImpl.java:859) at android.content.ContextWrapper.unregisterReceiver(ContextWrapper.java:331) at com.app.notifyme.BatteryService.onDestroy(BatteryService.java:128) …

6
什么时候应该抛出IllegalArgumentException?
我担心这是运行时异常,因此应谨慎使用。 标准用例: void setPercentage(int pct) { if( pct < 0 || pct > 100) { throw new IllegalArgumentException("bad percent"); } } 但这似乎会强制执行以下设计: public void computeScore() throws MyPackageException { try { setPercentage(userInputPercent); } catch(IllegalArgumentException exc){ throw new MyPackageException(exc); } } 使它回到被检查的异常。 好的,但是让我们开始吧。如果输入错误,则会出现运行时错误。首先,这实际上是一个很难统一实施的策略,因为您可能必须执行相反的转换: public void scanEmail(String emailStr, InputStream mime) { try { …

11
Android 5.0(L)服务意图必须在Google Analytics(分析)中明确显示
我的代码在<5版本中有效,但是在Android 5.0中,我遇到了一个我不太了解的问题。 10-23 10:18:18.945: E/AndroidRuntime(8987): java.lang.IllegalArgumentException: Service Intent must be explicit: Intent { act=com.google.android.gms.analytics.service.START (has extras) } 即使在现在,我的代码仍适用于4.4.4及更低版本。那我该怎么办?我将在下面发布相关代码。另外,在谷歌搜索期间,我发现了有关java.lang.IllegalArgumentException的帖子:关于Android 5.0,服务意图必须是明确的,但我不明白这是什么意思。 表现 <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="xxxxx.android.phone.xxxxx" android:versionCode="3" android:versionName="v1.2.4065" > <uses-sdk android:minSdkVersion="12" android:targetSdkVersion="21" /> <!-- Required for Google Analytics --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- For push notifications (GCM) --> <permission android:name="xxxxx.android.phone.xxxxx.permission.C2D_MESSAGE" android:protectionLevel="signature" /> <uses-permission …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.