text:
Archive for the Law Category
Tax haven data leak reverberates around globePosted in Conspiracy, Finance, Law, Politics on April 4, 2016 by betweentwopines
Go to Prison for File Sharing? That's What Hollywood Wants in the Secret TPP DealPosted in Computer, Conspiracy, Law on April 6, 2015 by betweentwopines
The Trans-Pacific Partnership agreement (TPP) poses massive threats to users in a dizzying number of ways. It will force other TPP signatories to accept the United States' excessive copyright terms of a minimum of life of the author plus 70 years, while locking the US to the same lengths so it will be harder to shorten them in the future. It contains DRM anti-circumvention provisions that will make it a crime to tinker with, hack, re-sell, preserve, and otherwise control any number of digital files and devices that you own. The TPP will encourage ISPs to monitor and police their users, likely leading to more censorship measures such as the blockage and filtering of content online in the name of copyright enforcement. And in the most recent leak of the TPP's Intellectual Property chapter, we found an even more alarming provision on trade secrets that could be used to crackdown on journalists and whistleblowers who report on corporate wrongdoing.
Here, we'd like to explore yet another set of rules in TPP that will chill users' rights. Those are the criminal enforcement provisions, which based upon the latest leak from May 2014 is still a contested and unresolved issue. It's about whether users could be jailed or hit with debilitating fines over allegations of copyright infringement.
Dangerously Low Threshold of Criminality
The US is pushing for a broad definition of a criminal violation of copyright, where even noncommercial activities could get people convicted of a crime. The leak also shows that Canada has opposed this definition. Canada supports language in which criminal remedies would only apply to cases where someone infringed explicitly for commercial purposes.
This distinction is crucial. Commercial infringement, where an infringer sells unauthorized copies of content for financial gain, is and should be a crime. But that's not what the US is pushing for—it's trying to get language passed in TPP that would make a criminal out of anyone who simply shares or otherwise makes available copyrighted works on a "commercial scale."
As anyone who has ever had a meme go viral knows, it is very easy to distribute content on a commercial scale online, even without it being a money-making operation. That means fans who distribute subtitles to foreign movies or anime, or archivists and librarians who preserve and upload old books, videos, games, or music, could go to jail or face huge fines for their work. Someone who makes a remix film and puts it online could be under threat. Such a broad definition is ripe for abuse, and we've seen such abuse happen many times before.
Fair use, and other copyright exceptions and limitations frameworks like fair dealing, have been under constant attack by rightsholder groups who try to undermine and chip away at our rights as users to do things with copyrighted content. Given this reality, these criminal enforcement rules could go further to intimidate and discourage users from exercising their rights to use and share content for purposes such as parody, education, and access for the disabled.
Penalties That Must be "Sufficiently High"
The penalties themselves could be enough to intimidate and punish users in a way that is grossly disproportionate to the crime. Based upon the leak, which showed no opposition in key sections, it seems TPP negotiators have already agreed to more vague provisions that would oblige countries to enact prison sentences and monetary fines that are "sufficiently high" to deter people from infringing again. Here is the text:
penalties that include sentences of imprisonment as well as monetary fines sufficiently high to provide a deterrent to future acts of infringement, consistently with the level of penalties applied for crimes of a corresponding gravity;
Already in manycountries, criminal punishments for copyright grossly outweigh penalties for acts that are comparatively more harmful to others. So the question as to what crimes copyright infringement corresponds to in "gravity" is obscure. What's more alarming is that countries without existing criminal penalties or whose penalties are not "sufficiently high" to satisfy the US government, may be forced to enact harsher rules. The US Trade Representative (USTR) could use the certification process, at the behest of rightsholder groups, to arm-twist nations into passing more severe penalties, even after the TPP is signed and ratified. The USTR has had a long history of pressuring other nations into enacting extreme IP policies, so it would not be out of the realm of possibility.
Property Seizure and Asset Forfeiture
The TPP's copyright provisions even require countries to enable judges to unilaterally order the seizure, destruction, or forfeiture of anything that can be "traceable to infringing activity", has been used in the "creation of pirated copyright goods", or is "documentary evidence relevant to the alleged offense". Under such obligations, law enforcement could become ever more empowered to seize laptops, servers, or even domain names.
Domain name seizure in the name of copyright enforcement is not new to us in the US, nor to people running websites from abroad. But these provisions open the door to the passage of ever more oppressive measures to enable governments to get an order from a judge to seize websites and devices. The provision also says that the government can act even without a formal complaint from the copyright holder. So in places where the government chooses to use the force of copyright to censor its critics, this could be even more disastrous.
Criminalization of Getting Around DRM
We've continued to raise this issue, but it's always worth mentioning—the TPP exports the United States' criminal laws on digital rights management, or DRM. The TPP could lead to policies where users will be charged with crimes for circumventing, or sharing knowledge or tools on how to circumvent DRM for financial gain as long as they have "reasonable ground to know" that it's illegal to do so. Chile, however, opposes this vague language because it could lead to criminal penalties for innocent users.
The most recent leak of the Intellectual Property chapter revealed new exceptions that would let public interest organizations—such as libraries and educational institutions—get around DRM to access copyrighted content for uses protected by fair use or fair dealing, or content that may simply be in the public domain. But even if it's legal, it would be difficult for them to get around DRM since they may not be equipped with the knowledge to do it on their own. If someone else tries to do a public service for them by creating these tools for legally-protected purposes, they could still be put in jail or face huge fines.
Like the various other digital copyright enforcement provisions in TPP, the criminal enforcement language loosely reflects the United States' DMCA but is abstracted enough that the US can pressure other nations to enact rules that are much worse for users. It's therefore far from comforting when the White House claims that the TPP's copyright rules would not "change US law"—we're still exporting bad rules to other nations, while binding ourselves to obligations that may prevent US lawmakers from reforming it for the better. These rules were passed in the US through cycles of corrupt policy laundering. Now, the TPP is the latest step in this trend of increasingly draconian copyright rules passing through opaque, corporate-captured processes.
These excessive criminal copyright rules are what we get when Big Content has access to powerful, secretive rule-making institutions. We get rules that would send users to prison, force them to pay debilitating fines, or have their property seized or destroyed in the name of copyright enforcement. This is yet another reason why we need to stop the TPP—to put an end to this seemingly endless progression towards ever more chilling copyright restrictions and enforcement.
If you're in the US, please call on your representatives to oppose Fast Track for TPP and other undemocratic trade deals with harmful digital policies.
Source : https://www.eff.org/deeplinks/2015/02/go-prison-sharing-files-thats-what-hollywood-wants-secret-tpp-deal/
If Obamacare Is As Bad As You Say, Then Give Back Money You Made As AdvisorPosted in Health, Law, Politics on November 17, 2014 by betweentwopines
BOB SCHIEFFER: I was dumbstruck when I heard the comments that are surfacing from an economist named Jonathan Gruber, who was paid four hundred thousand dollars to help shape the President's health care plan. First, he allowed his health plan passed only because of a lack of transparency and this is a direct quote, "the stupidity of the American people." Then Friday our Nancy Cordes found a couple of other things he said going back to 2011.
JONATHAN GRUBER: First by mislabeling it, calling it a tax on insurance plans rather than a tax on people and we all know it's really a tax on people who hold those insurance plans.
BOB SCHIEFFER: And there was this about Massachusetts health care plan.
JONATHAN GRUBER: The dirty secret in Massachusetts is the Feds pay for our bill. Okay. Ted Kennedy and smart people in Massachusetts had basically figured out way to sort of rip off the Feds for about four hundred million dollars a year.
BOB SCHIEFFER: I'll be honest, while I favor health insurance, I am not wild about the new plan and how it became law either. But here is my question for Mister Gruber. If all this was as bad as you say, why did you take the money you earned as an advisor, nor is it too late to give it back? What we have here is another example of the sorry state of American politics where people take money for things in which they don't believe and whether it's good for the American people is not even a question. As for the President he may want to consider that old politician's prayer, Lord, I can take care of my enemies; just protect me from my friends.
Russell Napier Declares November 16, 2014 The Day Money DiesPosted in Conspiracy, Finance, Law on November 17, 2014 by betweentwopines
By Tyler Durden
From Russell Napier of ERIC
It is with regret and sadness we announce the death of money on November 16th 2014 in Brisbane, Australia
'A mark, a yen, a buck, or a pound
A buck or a pound
A buck or a pound
Is all that makes the world go 'round;
That clinking, clanking sound
Can make the world go 'round.'
"Money" from Cabaret by Kander & Ebb
In the musical Cabaret, Sally Bowles and the Emcee sing about money from the perspective of those witnessing its collapse in value in real terms in the great German hyperinflation of 1923.
Less than a decade later, and a continent away, a young lawyer from Youngstown, Ohio noted on July 25th 1932 how money's value could also fall in nominal terms:
"A considerable traffic has grown up in Youngstown in purchase and sale at a discount of Pass-Books on the Dollar Bank, City Trust and Home Savings Banks. Prices vary from 60% to 70% cash. All of these banks are now open but are not paying out funds."
The Great Depression – A Diary: Benjamin Roth (first published 2009)
In Youngstown the bank deposit, an asset previously referred to as "money", had fallen by up to 40% relative to the value of cash. The G20 announcement in Brisbane on November 16th will formalize a "bail in" for large-scale depositors raising the spectre that their deposits are, as many were in 1932, worth less than banknotes. It will be very clear that the value of bank deposits can fall in nominal terms.
On Sunday in Brisbane the G20 will announce that bank deposits are just part of commercial banks' capital structure, and also that they are far from the most senior portion of that structure. With deposits then subjected to a decline in nominal value following a bank failure, it is self-evident that a bank deposit is no longer money in the way a banknote is. If a banknote cannot be subjected to a decline in nominal value, we need to ask whether banknotes can act as a superior store of value than bank deposits? If that is the case, will some investors prefer banknotes to bank deposits as a form of savings? Such a change in preference is known as a "bank run."
Each country will introduce its own legislation to effect the ' bail-in' agreed by the G20 this coming weekend. The consultation document from the UK's Treasury lists the following bank creditors who will rank ABOVE depositors in a 'failing' financial institution:
- Liabilities representing protected deposits (in the UK the government guarantee protects 100% of deposits up to the value of GBP85,000)
- any liability, so far as it is secured
- Liabilities that the bank has by virtue of holding client assets
- Liabilities arising with an original maturity of less than 7 days owed by the banks to a credit institution or investment firm
- Liabilities arising from participation in designated settlement systems
- Liabilities owed to central counterparties recognized by the European Securities and Markets Authorities… on OTC derivatives, central counterparties and trade depositaries
- Liabilities owed to an employee or former employee in relation to salary or other remuneration, except variable remuneration
- Liabilities owed to an employee or former employee in relation to rights under a pension scheme, except rights to discretionary benefits
- Liabilities owed to creditors arising from the provision to the bank of goods or service (other than financial services) that are critical to the daily functioning of its operations
The above list makes it clear that deposits larger than GBP85,000 will rank ahead of the bond holders of banks, but they will rank above little else. Importantly, both borrowings of the banks of less than 7 days maturity from other financial institutions and sums owed by banks in their role as counterparties to OTC derivatives will rank above large deposits.
Large deposits at banks are no longer money, as this legislation will formally push them down through the capital structure to a position of material capital risk in any "failing" institution. In our last financial crisis, deposits were de facto guaranteed by the state, but from November 16th holders of large-scale deposits will be, both de facto and de jure, just another creditor squabbling over their share of the assets of a failed bank.
Interestingly, HM Treasury uses the word 'failing' rather than "failed" in its consultation document and investors could find their large deposits frozen for a prolonged period in any "failing" institution while the courts unpick the capital structure and decide exactly where any losses should fall.
If we have another Lehman Brothers collapse, large-scale depositors could find themselves in the courts for years before final adjudication on the scale of their losses could be established. During this period would this illiquid asset, formerly called a deposit and now subject to an unknown capital loss, be considered money? Clearly it would not, as its illiquidity and likely decline in nominal value would make it unacceptable as a medium of exchange.
From November 16th 2014 the large-scale deposit at a commercial bank is, at best, a lesser form of money, and to many it will cease to be money at all as its nominal value can fall and it could cease to be accepted as a medium of exchange.
Fortunately, the developed world's commercial banks are flush with central bank reserves and these are instantly convertible into the banknotes which they may need to meet demand from depositors. While the huge level of reserves on the balance sheet is a buffer, the funding of fractional reserve banks is still very negatively impacted by a shift from deposits to bank notes. With deflationary forces gathering momentum, this further impediment to the extension of commercial bank credit would be another factor preventing central bank monetary largesse translating into growth and inflation.
As the world's smartest lawyer Charlie Munger is fond of saying, "Show me the incentive and I will show you the outcome." Some simple mathematics reveals that the November 16th announcement will create a very major incentive for investors to change deposits into banknotes.
Consider that the standard pallet measures 1 metre by 1.2 metres and will take 84 piles of Euro 500 banknotes. The UK's Health and Safety Executive recommends that the height of a pallet should not exceed the widest side of its base. A 1.2 metre high pile of banknotes contains 11,000 notes and thus each pallet can safely hold 84 piles of 11,000 banknotes. A pallet of safely stacked 924,000 Euro 500 banknotes is therefore worth Euro462m.
There is a small warehouse for rent near Newry, at the foot of the Mourne Mountains in Northern Ireland. Given its dimensions (16.5m x 9.0m x 5.6m) one could stack 468 pallets of 500 Euro notes representing Euro 216bn. At the current bank deposit rate of minus 50bp per annum, the cost of carry to have Euro 216bn on deposit with a commercial bank would be Euro 1,081m. The annual cost of the warehousing space is around Euro 7,000!
Now clearly this warehouse will need significant private security, but in Northern Ireland there is an over supply of such security due to a structural change in market conditions, and prices are reasonable. Anyway, just how much security could you afford if you charged clients 20bp to hold their Euro 216bn, and generated an annual fee of Euro432 million, with an annual saving to your clients of about Euro 648 million?
This represents both a yield improvement and a significant improvement in capital risk compared to bank deposits, as bank notes cannot be "bailed in." There is therefore an annual profit of around Euro432 million for the manager with a warehouse and friends in low places. Anyone for the "Mourne Or Newry Enhanced Yield Banknote Actively Guarded Security", or MONEY BAGS for short?
As ever, there is a first-mover advantage. There are only about 600 million 500 Euro notes available, though sizeable arbitrage profits still exist on warehouses full of 200 Euro notes. As the function of such warehouses is focused on the role of money as a store of value, a role no longer fulfilled by the large-scale deposit, one should expect a premium to develop, and potentially a secondary market in note-filled, well-protected warehouses. For warehouses full of German Euro notes — those are the ones with a serial number beginning in X — a particularly high premium may arise due to risks of a future Euro break-up.
Irish legend tells of an X at the end of the rainbow marking the position of a pot of gold. In our post- Brisbane world, investors may be content to find just a bundle of paper marked with an X.
Oh, Mary, this London's a wonderful sight
With people here working by day and by night.
They don't sow potatoes nor barley nor wheat,
But there's gangs of them diggin' for gold in the street
At least when I asked them, that's what I was told,
So I just took a hand at this diggin' for gold,
But for all that I've found there, I might as well be
In the place where the dark Mourne sweeps down to
the sea.'
Percy French 1854-1920
Source: http://www.zerohedge.com/news/2014-11-12/russell-napier-declares-november-16-2014-day-money-dies
The Real Reason Why Germany Halted Its Gold Repatriation From The NY Fed
By Tyler Durden "… the gold community paid great attention to the decision of the German Bundesbank to "bring German gold home". At the beginning of 2013, the Bundesbank announced it would repatriate 300 tonnes of gold stored in the US by 2020. It is well behind schedule, citing logistical difficulties. Yet diplomatic difficulties are more likely to be the chief cause of the delay, especially seeing as the Bundesbank has proven its capacity to organise large-scale gold transports. In the early 2000s, the Bundesbank incrementally repatriated 930 tonnes of German gold held by the Bank of England."
9 Of The Biggest Myths People Believe About 'The System'
By Tyler Durden In The West today we see mass delusion everywhere. People seem to believe their governments are almighty beings capable of performing magic – water into wine, debt into wealth. Here are some of the biggest myths we see in the system today…
Follow above stories at http://www.zerohedge.com/
Government agents 'directly involved' in most high-profile US terror plotsPosted in Conspiracy, Law, Military, Politics on July 24, 2014 by betweentwopines
• Human Rights Watch documents 'sting' operations
• Report raises questions about post-9/11 civil rights
Nearly all of the highest-profile domestic terrorism plots in the United States since 9/11 featured the "direct involvement" of government agents or informants, a new report says.
Some of the controversial "sting" operations "were proposed or led by informants", bordering on entrapment by law enforcement. Yet the courtroom obstacles to proving entrapment are significant, one of the reasons the stings persist.
The lengthy report, released on Monday by Human Rights Watch, raises questions about the US criminal justice system's ability to respect civil rights and due process in post-9/11 terrorism cases. It portrays a system that features not just the sting operations but secret evidence, anonymous juries, extensive pretrial detentions and convictions significantly removed from actual plots.
"In some cases the FBI may have created terrorists out of law-abiding individuals by suggesting the idea of taking terrorist action or encouraging the target to act," the report alleges.
Out of the 494 cases related to terrorism the US has tried since 9/11, the plurality of convictions – 18% overall – are not for thwarted plots but for "material support" charges, a broad category expanded further by the 2001 Patriot Act that permits prosecutors to pursue charges with tenuous connections to a terrorist act or group.
In one such incident, the initial basis for a material-support case alleging a man provided "military gear" to al-Qaida turned out to be waterproof socks in his luggage.
Several cases featured years-long solitary confinement for accused terrorists before their trials. Some defendants displayed signs of mental incapacity. Jurors for the 2007 plot to attack the Fort Dix army base, itself influenced by government informants, were anonymous, limiting defense counsel's ability to screen out bias.
Human Rights Watch's findings call into question the post-9/11 shift taken by the FBI and other law enforcement agencies toward stopping terrorist plots before they occur. While the vast majority of counterterrorism tactics involved are legally authorized, particularly after Congress and successive administrations relaxed restrictions on law enforcement and intelligence agencies for counterterrorism, they suggest that the government's zeal to protect Americans has in some cases morphed into manufacturing threats.
The report focuses primarily on 27 cases and accordingly stops short of drawing systemic conclusions. It also finds several trials and convictions for "deliberate attempts at terrorism or terrorism financing" that it does not challenge.
The four high-profile domestic plots it found free of government involvement were the 2013 Boston Marathon bombing; Najibullah Zazi's 2009 plot to bomb the New York subway; the attempted Times Square carbombing of 2010; and the 2002 shooting at Los Angeles International Airport's El Al counter.
But the report is a rare attempt at a critical overview of a system often touted by the Obama administration and civil libertarian groups as a rigorous, capable and just alternative to the military tribunals and indefinite detention advocated by conservative critics. It comes as new pressure mounts on a variety of counterterrorism practices, from the courtroom use of warrantless surveillance to the no-fly list and law enforcement's "suspicious activity reports" database.
In particular, Human Rights Watch examines the extent and impact of law enforcement's use of terrorism informants, who can both steer people into attempted acts of violence and chill religious or civic behaviour in the communities they penetrate.
Linda Sarsour, the executive director of the Arab American Association of New York, a social services agency, told the Guardian she almost has a "radar for informants" sent to infiltrate her Brooklyn community.
While the FBI has long relied on confidential informants to alert them to criminal activity, for terrorism cases informants insert themselves into Muslim mosques, businesses and community gatherings and can cajole people toward a plot "who perhaps would never have participated in a terrorist act on their own initiative", the study found.
Many trade information for cash. The FBI in 2008 estimated it had 15,000 paid informants. About 30% of post-9/11 terrorism cases are considered sting operations in which informants played an "active role" in incubating plots leading to arrest, according to studies cited in the Human Rights Watch report. Among those roles are making comments "that appeared designed to inflame the targets" on "politically sensitive" subjects, and pushing operations forward if a target's "opinions were deemed sufficiently troubling".
Entrapment, the subject of much FBI criticism over the years, is difficult to prove in court. The burden is on a defendant to show he or she was not "predisposed" to commit a violent act, even if induced by a government agent. Human Rights Watch observes that standard focuses attention "not on the crime, but on the nature of the subject", often against a backdrop where "inflammatory stereotypes and highly charged characterizations of Islam and foreigners often prevail".
Among the informants themselves there is less ambiguity. "It is all about entrapment," Craig Monteilh, one such former FBI informant tasked with mosque infiltration, told the Guardian in 2012.
Informants, the study found, sometimes overcome their targets' stated objections to engage in terrorism. A man convicted in 2006 of attempting to bomb the Herald Square subway station in Manhattan told an informant who concocted the plot he would have to check with his mother and was uncomfortable planting the bombs himself. One member of the "Newburgh Four" plot to attack synagogues and military planes – whose case is the subject of an HBO documentary airing on Monday – told his informant "maybe my mission hasn't come yet".
Once in court, terrorism cases receive evidentiary and pre-trial leeway rarely afforded to non-terrorism cases. A federal judge in Virginia permitted into evidence statements made by a defendant while in a Saudi jail in which the defendant, Amed Omar Abu Ali, alleged torture, a longstanding practice in Saudi Arabia. The evidence formed the basis for a conviction, and eventually a life sentence, for conspiracy to assassinate George W Bush. Mohammed Warsame, who pleaded guilty to conspiracy to provide material support to a foreign terrorist organization, was held in solitary confinement for five years before his trial.
Another implication of the law-enforcement tactics cited the report is a deepening alienation of American Muslims from a government that publicly insists it needs their support to head off extremism but secretly deploys informants to infiltrate mosques and community centers.
"The best way to prevent violent extremism inspired by violent jihadists is to work with the Muslim American community – which has consistently rejected terrorism – to identify signs of radicalization and partner with law enforcement when an individual is drifting towards violence. And these partnerships can only work when we recognize that Muslims are a fundamental part of the American family," Obama said in a high-profile 2013 speech.
Yet the Obama administration has needed to purge Islamophobic training materials from FBI counterterrorism, which sparked deep suspicion in US Muslim communities. It is now conducting a review of similar material in the intelligence community after a document leaked by Edward Snowden used the slur "Mohammed Raghead" as a placeholder for Muslims.
Source: http://www.theguardian.com/world/2014/jul/21/government-agents-directly-involved-us-terror-plots-report
A Lawsuit Could Destroy Obamacare In These 36 States Business Insider By Katie JenningsPosted in Health, Law, Medicine, Science, Warnings on July 21, 2014 by betweentwopines
A lawsuit challenging Obamacare subsidies has the potential to skyrocket the health insurance costs of 5.4 million Americans.
The decision lies on the shoulders of three federal judges, who will decide the legality of subsidies served through the federal health insurance marketplaces, a decision that impacts residents of 36 states. The decision could come as early as July 15.
The Affordable Care Act, colloquially called Obamacare, established what are known as health insurance marketplaces or exchanges, where consumers can buy health insurance plans. So far around 8 million people have signed up. Sixteen states operate their own marketplaces, and the remaining two-thirds of states use the federal marketplace, Healthcare.gov.
Under the ACA, Individuals who make less than $46,075 are eligible to receive subsidies, or tax credits, towards their premiums, which means they do not pay the full monthly cost of their health insurance. Without these subsidies their costs would quadruple.
On average, premiums in the federal exchanges are $82 per month for individuals who are receiving subsidies. The average cost without subsidies is almost four times that at $346 per month, according to a report from HHS.
The U.S. Court of Appeals for the D.C. Circuit is expected to rule on Halbig v. Burwell, which challenges these subsidies. As Business Insider's Brett LoGiurato reported, the Affordable Care Act was designed with the expectation that each state would run its own exchange, and part of the law notes that subsidies may be provided "through an Exchange established by the State." The challengers to the law argue that this means that, technically, the subsidies should only be available to the state-run marketplaces.
That means more than 5 million people in 36 states who are currently receiving health insurance subsidies through the federal marketplaces could potentially be shut out, as the graphic below shows.
Business Insider/ Skye Gould
The case will be decided by three federal judges. One supports the challengers and one doesn't. So it seems the decision will come down to the swing vote of Judge Thomas B. Griffith, a George W. Bush appointee. From the oral arguments heard in March, it's not entirely clear whose side he is on.
This is one of four pending federal cases that challenges the subsidies, according to The Washington Post.
Source: http://finance.yahoo.com/news/lawsuit-could-destroy-obamacare-36-130900895.html
Exclusive: CIA had role in Germany spy affairPosted in Conspiracy, Law, News, Politics on July 7, 2014 by betweentwopines
By Mark Hosenball
(Reuters) – The Central Intelligence Agency was involved in a spying operation against Germany that led to the alleged recruitment of a German intelligence official and has prompted renewed outrage in Berlin, two U.S. officials familiar with the matter said on Monday.
CIA Director John Brennan has asked to brief key members of the U.S. Congress on the matter, which threatens a new rupture between Washington and a close European ally, one of the officials said.
It was unclear if and when Brennan's briefing to U.S. lawmakers would take place. The CIA declined any comment on the matter.
The office of Germany's Federal Prosecutor, based in the western city of Karlsruhe, late last week issued a statement saying that a 31-year old man had been arrested on suspicion of being a foreign spy, and that investigations were continuing. The statement offered no further details.
German politicians have said that the suspect, an employee of the country's foreign intelligence service, admitted passing to an American contact details concerning a German parliamentary committee's investigation of alleged U.S. eavesdropping disclosed by Edward Snowden, a former contractor for the U.S. National Security Agency.
The U.S. officials who confirmed the CIA's role spoke on condition of anonymity, and offered no further details.
White House press secretary Josh Earnest declined comment on the dispute.
"The relationship that the United States has with Germany is incredibly important. This is a very close partnership that we have on a range of security issues, including some intelligence issues," Earnest said. "All of those things are high priorities not just to this administration, but to this country. So we're going to work with the Germans to resolve this situation appropriately."
Snowden's revelations last year, which included evidence that the NSA was targeting German Chancellor Angela Merkel's personal cell phone, frosted U.S.-German relations. The White House agreed to stop targeting Merkel, but rejected Berlin's pleas for a wider "no spy" pact.
The latest case risks further straining ties.
"If the reports are correct it would be a serious case," Merkel told a news conference in Beijing, standing next to Chinese Premier Li Keqiang.
German media reported that the suspected spy, who has not been named, had first been detained on suspicion of contacting Russian intelligence agents, but then admitted he had worked with the Americans. The suspect worked for Germany's Federal Intelligence Service, known by the German initials BND.
While historically close, U.S. intelligence ties to Germany became strained over the last year in the wake of the Snowden revelations.
Source: http://www.reuters.com/article/2014/07/07/us-germany-usa-spying-cia-idUSKBN0FC21920140707
Related News: Germany reacts to 'double agent' scandal


text:
fuglefun Teaser: Making and Sharing Fugleflicks k12onlineconference.org/?p=1392#.UlsEt… coming the week of Oct 21st via @k12online #k12online13
Be prepared 2have UR socks TOTALLY knocked off tomorrow by @shannonmmiller in her #k12online13 pre-con keynote. WOW! j.mp/19EWDUo
Halloween Jam [VIDEO] @ Frontier City Theme Park instagram.com/p/fbZvwLOgLV/
iReading: A Happy Mathematical Birthday j.mp/1ejQ76o gr8 #stem student story! via @DAAD_Australia
@michale_gentry @ChrisParadise similar to how this site is setup we're using at my church for a book study discussion ow.ly/pMhSC
@michale_gentry @ChrisParadise my thought was maybe repurposing the @okedushare site as a book discussion site w a moderated contribute form
@ingewassmann yes definitely - the Jot Mini is my fav iPad stylus! ow.ly/25faYn
@ChrisParadise np - how was your Quartz Mtn experience?!
@kellycroy this one was started by a couple friends from church who are also independent consultants and authors. I'll post on it! :-)
@mjfagioli i'm glad you found it helpful! Good luck to you :-)
@shoshyart definitely @BookCreatorApp :-)
A huge blessing this afternoon, my 2nd opportunity to meet with a local "Mastermind" group
iReading: @RichardGarriott 's suggestions for a healthy game development industry j.mp/17mNOdJ via @EAThomson @ShroudofAvatar

subset: commoncrawl


text:
Ravens Release 2012 Schedule
Baltimore To Open Season At Home On Monday Night Football
The Baltimore Ravens, who have earned the playoffs the last four-consecutive seasons under head coach John Harbaugh, open the 2012 regular season with a Monday night home game on Sept. 10 against AFC North rival Cincinnati, a team that also made the postseason in 2011. Game time is 7 p.m., and this is the Ravens first home Monday night game since Dec. 3, 2007 against the Patriots (a 27-24 loss).
Baltimore, which is already scheduled for four nationally-televised games in the regular season, will play in primetime in three of its first four games. After the opener against the Bengals, the Ravens will go to Philadelphia on Sept. 16. On the following Sunday night (Sept. 23), the Ravens host the defending AFC Champion Patriots at M&T Bank Stadium at 8:20 p.m. Four days later, on Thursday Sept. 27, the Browns come to Charm City for an 8:20 p.m. contest that will be televised by the NFL Network.
(The Ravens host the Lions on Aug. 18 in another nationally-televised game.)
Unusual in the schedule are two games against the Steelers in three weeks. Baltimore is at Pittsburgh on Nov. 18 in a Sunday-night special on NBC-TV, and these two rivals clash again at M&T Bank Stadium on Dec. 2. In between these two physical confrontations is the Ravens lone West Coast trip a Nov. 25 game at San Diego.
The Ravens conclude the season with four of five games against 2011 playoff teams. That includes the home contest against the Steelers, home games against the Broncos (Dec. 16) and Giants (Dec. 23) and a regular season finale at Cincinnati (Dec. 30). Baltimore plays at the Redskins on Dec. 9.
(How about the potential of facing Manning brothers, Peyton and Eli, back-to-back on Dec. 16 and 23?)
The Ravens are home just once in October (10/14) when they host the Cowboys. That follows a road game at Kansas City on Oct. 7 and precedes an Oct. 21 matchup at Houston. The teams bye weekend ends the October schedule.
Baltimore starts November with an away game at Cleveland (Nov. 4) and a home contest against the Raiders (Nov. 11).
Based on 2011 records, the Ravens face the NFLs fourth-toughest schedule (134-122, .523) and will play eight games against playoff teams from a year ago, which ties Cleveland and Philadelphia for the leagues most. Baltimore and San Francisco are the only teams to play both Super Bowl participants (Giants and Patriots) from last season.
Based on todays roster and likely starters, the Ravens will face 13 teams with Pro Bowl quarterbacks (parenthesis indicates number of Pro Bowls): the Steelers Ben Roethlisberger (2) and Bengals Andy Dalton (1), twice each, Denvers Peyton Manning (11), New Englands Tom Brady (7), the Chargers Philip Rivers (4), Phillys Michael Vick (4), Dallas Tony Romo (3), Oaklands Carson Palmer (2), the Giants Eli Manning (2), along with one-time Pro Bowlers Matt Cassel of the Chiefs and Houstons Matt Schaub.
Mon. Sept. 10 CINCINNATI BENGALS M&T BANK STADIUM 7:00 p.m. (ESPN)
Sun. Sept. 16 at Philadelphia Eagles Lincoln Financial Field 1:00 p.m.
Sun. Sept. 23 NEW ENGLAND PATRIOTS M&T BANK STADIUM 8:20 p.m. (NBC)
Thurs. Sept. 27 CLEVELAND BROWNS M&T BANK STADIUM 8:20 p.m. (NFLN)
Sun. Oct. 7 at Kansas City Chiefs Arrowhead Stadium 1:00 p.m.
Sun. Oct. 14 DALLAS COWBOYS M&T BANK STADIUM 1:00 p.m.
Sun. Oct. 21 at Houston Texans Reliant Stadium 1:00 p.m.
Sun. Oct. 28 BYE
Sun. Nov. 4 at Cleveland Browns Cleveland Browns Stadium 1:00 p.m.
Sun. Nov. 11 OAKLAND RAIDERS M&T BANK STADIUM 1:00 p.m.
Sun. Nov. 18 at Pittsburgh Steelers Heinz Field 8:20 p.m. (NBC)
Sun. Nov. 25 at San Diego Chargers Qualcomm Stadium 4:05 p.m.
Sun. Dec. 2 PITTSBURGH STEELERS M&T BANK STADIUM 4:15 p.m.
Sun. Dec. 9 at Washington Redskins FedExField 1:00 p.m.
Sun. Dec. 16 DENVER BRONCOS M&T BANK STADIUM 1:00 p.m.
Sun. Dec. 23 NEW YORK GIANTS M&T BANK STADIUM 1:00 p.m.
Sun. Dec. 30 at Cincinnati Bengals Paul Brown Stadium 1:00 p.m.


text:
If you're looking for a more visual representation of records in your Microsoft Dynamics CRM, PowerMap will be your new best friend. PowerMap lets users choose an entity in CRM, choose a view, and plots all of the individual records from that view on one map. Users can map more than one entity, and more than one view at a time, and can also save their PowerMap preferences, including map configurations, zoom levels and views.
Here are a few ways PowerMap can be used:
- Supports any entity with an address field
- Click on a pin on a map, and a summary of the record will display
- Open a record directly from the map, by clicking on the name of the record in the summary view
- Choose a separate pin for each entity or view you are mapping
- Save map configurations so that you can come back to them later
- Put PowerMap directly on a CRM form
Another awesome feature of PowerMap is that it can be added directly onto a dashboard for ease of use. The below steps will give you a walk-through of how to add this powerful add-on directly on your dashboard!
Things you will need:
Download the PowerMaps solution here.
Download Solution (depending on the version of CRM you have, 2011 or 2013, you will need to select the solution ending in the corresponding year)
- EXAMPLE: X.X.X.2013 for CRM 2013 users.
- We have also included an Import Guide as well as a User Guide.
Once you have completed the install and configuration you are ready to place PowerMaps on your dashboard!
1. Within CRM 2013 click on the little house icon on the top ribbon. This will bring you to your homepage.
2. From the homepage, click on the +New button. This will bring you to the dashboard layout selector.
3. Here you will select the type of layout you want for your dashboard. We will use a 3-column regular dashboard.
4. Click Create. This brings you to the dashboard editor. Name your dashboard to your liking. In the squares below, you will notice in the middle there are 4 icons that represent 4 objects you can add to your dashboard:
- Insert Chart
- Insert List
- Insert Iframe
- Insert Web Resource
5. For the purpose of adding PowerMap to the dashboard, select Web Resource. This will bring you to the Add Web Resource page. Click on the magnifying glass and scroll down to Look Up More Records. This will bring you to the Look Up Record screen.
6. On the Look Up Record Screen, do the following:
- Look in the WebResource Lookup View for HTML
- Search *pomap
- Select pomap/Map.html
- Click Add
7. Back on the Add Web Resource screen, click OK.
8. You can leave the values here as default.
9. All you have to do now is add any other dashboard components you wish to have on your dashboard, then click Save.
10. Refresh your browser then click on your dashboard view selector and select your dashboard you just created.
And there you have it. You have learned how to place PowerMap in a dashboard in Dynamics CRM!
If you like PowerMap and want to learn more, we have many more blogs on the PowerMap add-on that you can reference.
Happy CRM'ing!


text:
New Study Shows Anonymous Data Isn't Very Anonymous At All
from the hear-that? deptWe've pointed out time and time again that there's really no such thing as an anonymized dataset. Given the data, it's almost always easy enough to at least connect some of it back to a real person. It looks like there's now some research to support that. Steven Hoy points us to a new paper where some researchers wrote an algorithm that takes anonymized data from social networks and connects it back to names and addresses of individuals:
We present a framework for analyzing privacy and anonymity in social networks and develop a new re-identification algorithm targeting anonymized social-network graphs. To demonstrate its effectiveness on real-world networks, we show that a third of the users who can be verified to have accounts on both Twitter, a popular microblogging service, and Flickr, an online photo-sharing site, can be re-identified in the anonymous Twitter graph with only a 12% error rate.Basically, the researchers are saying that anonymized data isn't really anonymous -- and social networks that insist they're "safe" because they've anonymized the data are being somewhat disingenuous.
Filed Under: anonymity, anonymous data, social networks


text:
Considering my long, Left-wing history as a New Deal Democrat and my minor political activism in the 60's and 70's, against American Racism and the Vietnam War, some would think that I am loathe to call myself a patriot. They... Continue Reading →
Let's face it, most Americans with any semblance of independent thinking, have been angry and terrified by the election of our virulent Presidential buffoon. His performance thus far has actually amplified our initial trepidation. The situation seems so dire that... Continue Reading →
Just to be clear at the outset of this polemic, I am enraged that this malignant buffoon became our President and I fear for the futures of my progeny. In my 70's, having almost died 7 years ago, prior to... Continue Reading →
Some old, rich White Guy murders 59 people and shoots more than 500 more, while in a hotel room full of assault rifles and the Republicans keep repeating the mantra that it's not the right time to talk about gun... Continue Reading →
If you really want to understand how it is that Republicans have been winning elections by getting people to vote against their own best interests, then you MUST read this article. Republicans have been running a con game against the... Continue Reading →
The election of Donald Trump entails far more than our country being led by an angry, revengeful narcissist, who only sees the world as a reflection of his needs. Supporting this man, once you get past the greedy oligarchs demanding... Continue Reading →


text:
I cannot however resist sharing with the entire world that I got cable television today. And it was a bigger hassle than I anticipated. The drama started even before I hit power on my remote yo. My landlord, who just so happens to live next door to me, verbally attacked the cable guy and threatened him with physical or legal action (not sure which – both of them have mucked up English) when she saw him treading around the back yard looking at a nearby phone pole.
I was positively amazed at how intensely she felt the need to assert her authority over the cable technician. Even after I explained to her that I had requested cable television and everything that the installation entailed, she followed us around and stepped into my place and furiously pointed at a limp 8 ft coil of used cable that has been poking out of my living room baseboard since I moved in, "You aren't going to be using THAT are you? It isn't your property." I have no idea whatsoever the purpose of having a cut and frayed cable wire in my house will serve but there is no way I'm back-talking to a landlord of a rent-controlled apartment in this up and coming area (and I mean up-and-coming – I just saw that cute tall guy from "The Office" at my local bar) even if it means suffering through a few mildly uncomfortable moments. I mean it was only as uncomfortable as watching a date belittle a waitress or taxi driver. No biggie. Its not like IM the cable guy that had to crawl under the house because the landlord didn't want him to staple a cable anywhere near the roof.
A couple days ago I was packing up a pair of earrings I picked out for one of my fave friends. At the last minute I threw in a 'used' photocopy of a story from an anthology that I got on the first day of a fiction workshop I am taking. I spoke with her today and she told me how much she dug getting a photocopied short story in the mail. It makes you feel like you should be making notes or highlighting stuff or just reading a whole story in one sitting (that's Poe's definition of a short story BTW). I have been inspired to start a photocopied short story chainmail type thing. I suppose I need to make more friends that read to get started. Holler at me if you want to be a part of this.
Originally uploaded by kayekilla.
Within moments of getting off the plane back from my trip my favorite digital camera broke. I appreciated it even more that it waited until we god home to crap out on me. Although, I really wanted to get some MPEG footage of the American Airlines baggage claim walkway.
It had been on the fritz for some time so I knew its days were numbered but I was trying to ignore it. I thought that maybe there was just sand in the contraption and used some eyeglass screwdriver to open it up. That was when I really broke it. It was extra broken. And this is what it looked like.
Never Enough
Originally uploaded by kayekilla.
I got some more photos from B from the trip. It seems like there are more photos than there were minutes in the short trip. Whatevs. I have always said let god sort 'em out.
This photo in particular captures the essence of thebiggestbutte.com - it really follows the travel theme of "Never Enough" - part of anyone's vacation documentation should involve sassy posing near a contradictory road or restaurant sign. It's the kidnapping equivalent to holding up a newspaper to prove the date. You have to show that you took it to the limit and the only thing you took seriously was staying free.
Local Driving on Vimeo
The island version of what we midwestern girls know as the "peel-out."
I could hear these guys screeching about seventeeen curves away.


text:
This article has two objectives. Firstly it aims to compare and contrast the means necessary to enable single file uploads as opposed to multiple file multipart uploads. And, secondly, it shows that multiple file uploads cannot be implemented in exactly the same way as single file uploads (when using Spring 2.5) and then proceeds to outline a number of alternative solutions. The article covers only Commons Fileupload support as that is not only the only library now supported in Spring 2.5 but also it is a very good api.
Example code from a complete example project will be used in the article and the example project is made available as a compressed file at the end. It can be used as a skeletal implementation and as a test harness. There's nothing revolutionary or difficult here but hopefully this will serve as an informative and more complete resource that I wish I had when I was trying to implement multiple file uploads using Spring.
Table of contents
- Introduction
- Single file upload
- Create an html form to test uploads
- Create a form backing object bean
- Create a file upload controller
- Define Spring configuration
- Multiple file upload
- Solution 1 – Modify form backing object to accept multiple files
- Solution 2 – Use the raw http servlet request
- Solution 3 – Disable Spring support and use commons fileupload directly
- Solution 4 – Using a cross cut to disable spring support conditionally
- Conclusion
- Example project
- Related Spring Jira Issues
The reader is encouraged to have a look at the open Spring jira issues related to this article and add his/her vote to those issues.
A file upload can be processed either as a byte array, a multipart file or as a string. Here, for brevity and simplicity, only the multipart file option is explored and used as an example. For details of the other two please refer to the download of the example project.
Single file upload
A single file upload, in Spring 2.5, is implemented in a few simple steps.
- Create a file upload form to test uploads.
- Create a form backing object.
- Create a file upload controller.
- Define Spring configuration.
Let's go through these in turn using small examples.
Create an html form to test uploads
<form method="post" action="/spring-multi-file-upload/upload/multiPartFileSingle" enctype="multipart/form-data">
Type: <input type="text" name="type" value="multiPartFileSingle" size="60" />

File: <input type="file" name="file" size="60" />

<input type="submit" value="Upload" />
 </form>
Create a form backing object bean
package single.upload.beans; import org.springframework.web.multipart.MultipartFile; public class MultiPartFileUploadBean { private String type; private MultipartFile file; public String getType() { return type; } public void setType(String type) { this.type = type; } public void setFile(MultipartFile file) { this.file = file; } public MultipartFile getFile() { return file; } }
At runtime when a multi part http request is received Spring parses the request and automatically binds all form input values to this form backing object bean. Any binding errors are supplied to you as an argument to your controller.
Create a file upload controller.
package single.upload.controllers; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.util.Assert; import org.springframework.validation.BindException; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.SimpleFormController; import single.upload.beans.MultiPartFileUploadBean; public class MultiPartFileUploadController extends SimpleFormController { protected ModelAndView onSubmit(HttpServletRequest request, HttpServletResponse response, Object command, BindException errors) throws Exception { /* * validate type of request and type of form backing object bean */ Assert.state(request instanceof MultipartHttpServletRequest, "request !instanceof MultipartHttpServletRequest"); Assert.state(command instanceof MultiPartFileUploadBean, "command !instanceof MultiPartFileUploadBean"); /* * validate binding of text input field */ MultiPartFileUploadBean bean = (MultiPartFileUploadBean) command; Assert.state(bean.getType().equals("multiPartFileSingle"), "type != multiPartFileSingle"); /* * validate binding of uploaded file */ MultipartFile file = bean.getFile(); Assert.notNull(file, "multi part file must not be null"); return super.onSubmit(request, response, command, errors); } }
Define Spring configuration.
Enable multipart resolver support.
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize" value="5000000" /> <property name="maxInMemorySize" value="5000000" /> </bean>
There are a few points to note here.
- In Spring 2.5 the
CommonsMultipartResolverclass is now the only remaining implementation of the
- The bean id for this bean absolutely must be called 'multipartResolver'. Otherwise your controller will get an instance of
RequestFacadeinstead of
- All properties for this bean are optional.
- This bean must be defined in the dispatcher servlet application context.
Define remaining Spring beans.
<bean id="local.MultiPartFileUploadControllerSingle" class="single.upload.controllers.MultiPartFileUploadController"> <property name="commandClass" value="single.upload.beans.MultiPartFileUploadBean" /> <property name="formView" value="form" /> <property name="successView" value="success" /> </bean> <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <value> /multiPartFileSingle=local.MultiPartFileUploadControllerSingle </value> </property> </bean>
The single file upload implementation is complete and can be tested by deploying and using the example project. Instructions are provided at the end of the article.
Multiple file upload
A number of potential solutions (including one that doesn't work) are provided here and contrasted with each other.
Solution 1 – Modify form backing object to accept multiple files
NOTE: This solution doesn't work and is here simply for illustration and discussion purposes.
You may expect that if you modify the single file upload implementation very slightly to work with multiple files it'll just work. The form backing object bean should now expect an array of multipart files. The controller can be modifying accordingly to accept the new form backing object bean and the HTML file should now upload multiple files.
package multi.upload.beans; import org.springframework.web.multipart.MultipartFile; public class MultiPartFileUploadBean { private String type; private MultipartFile[] files; public String getType() { return type; } public void setType(String type) { this.type = type; } public void setFiles(MultipartFile[] file) { this.files = file; } public MultipartFile[] getFiles() { return files; } }
This should really work and do so dynamically. The incoming request should be able to define a form input called 'files' or 'files[]' that is populated with many files and the form backing object should be populated with all file items. In fact this doesn't work and the following exception is thrown.
org.springframework.web.multipart.MultipartException: Multiple files for field name [files] found - not supported by MultipartResolver org.springframework.web.multipart.commons.CommonsFileUploadSupport.parseFileItems(CommonsFileUploadSupport.java:254) org.springframework.web.multipart.commons.CommonsMultipartResolver.parseRequest(CommonsMultipartResolver.java:166) org.springframework.web.multipart.commons.CommonsMultipartResolver.resolveMultipart(CommonsMultipartResolver.java:149) org.springframework.web.servlet.DispatcherServlet.checkMultipart(DispatcherServlet.java:1015) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:851) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571) org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:511) javax.servlet.http.HttpServlet.service(HttpServlet.java:637) javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
In fact this is caused by the following code in
CommonsFileUploadSupport added in Spring 2.5.
CommonsMultipartFile file = new CommonsMultipartFile(fileItem); if (multipartFiles.put(file.getName(), file) != null) { throw new MultipartException( "Multiple files for field name [" + file.getName() + "] found - not supported by MultipartResolver"); }
There is even a two-year old open jira issue with major priority for this problem with an attached patch but regrettably it still remains unassigned. I would strongly suggest that the reader add a vote and comment to that bug and watch it for progress as well so that it can gain some traction. A small mention of it on the spring user mailing list also exists.
So if the above most intuitive way doesn't work then what are the remaining options? Read on.
Solution 2 – Use the raw request.
This solution involves forgetting everything above and simply using the raw request as follows. Since the binding of the form backing object bean does not work for multiple files that class can be discard altogether and since the controller doesn't need the command and the binding errors passed as arguments anymore it no longer needs to extend
SimpleFormController. In fact it doesn't need to extend anything at all. As a result the implementation is greatly simplified.
The remaining part of the solution depends on whether the client (in this case the html form) wants to use unique input names such as 'file1' and 'file2' or the same input name such as 'files' for multiple files. If the client is agreeable to using unique parameter names then the solution is easier as below.
HTML Form
<form method="post" action="/spring-multi-file-upload/upload/genericMulti" enctype="multipart/form-data">
Type: <input type="text" name="type" value="genericFileMulti" size="60" />

File1: <input type="file" name="file1" size="60" />

File2: <input type="file" name="file2" size="60" />

<input type="submit" value="Upload" />
 </form>
package multi.upload.controllers; import java.io.File; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.util.Assert; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.Controller; public class GenericFileUploadController implements Controller { @Override @SuppressWarnings("unchecked") public ModelAndView handleRequest(final HttpServletRequest request, final HttpServletResponse response) throws Exception { /* * validate request type */ Assert.state(request instanceof MultipartHttpServletRequest, "request !instanceof MultipartHttpServletRequest"); final MultipartHttpServletRequest multiRequest = (MultipartHttpServletRequest) request; /* * validate text input */ Assert.state(request.getParameter("type").equals("genericFileMulti"), "type != genericFileMulti"); /* * extract files */ final Map files = multiRequest.getFileMap(); Assert.state(files.size() > 0, "0 files exist"); /* * process files */ for (MultipartFile file : files.values()) { file.transferTo(new File(new File("/Users/dhruba/tmp"), file.getOriginalFilename())); } return new ModelAndView("success"); } }
Spring configuration
<bean id="local.GenericFileUploadControllerMulti" class="multi.upload.controllers.GenericFileUploadController" /> <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <value> /genericMulti=local.GenericFileUploadControllerMulti </value> </property> </bean>
If however the client insists on using the same form input name such as 'files[]' or 'files' and then populating that name with multiple files then a small hack is necessary as follows. As noted above Spring 2.5 throws an exception if it detects the same form input name of type file more than once.
CommonsFileUploadSupport – the class which throws that exception is not final and the method which throws that exception is
protected so using the wonders of inheritance and subclassing one can simply fix/modify the logic a little bit as follows. The change I've made is literally one word representing one method invocation which enables us to have multiple files incoming under the same form input name.
package resolver;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletContext;
import org.apache.commons.fileupload.FileItem;
import org.springframework.util.StringUtils;
import org.springframework.web.multipart.MultipartException;
import org.springframework.web.multipart.commons.CommonsMultipartFile;
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
public class MultiCommonsMultipartResolver extends CommonsMultipartResolver {
public MultiCommonsMultipartResolver() {
public MultiCommonsMultipartResolver(ServletContext servletContext) {
protected MultipartParsingResult parseFileItems(List fileItems, String encoding) {
Map multipartFiles = new HashMap();
Map multipartParameters = new HashMap();
// Extract multipart files and multipart parameters.
for (Iterator it = fileItems.iterator(); it.hasNext();) {
FileItem fileItem = (FileItem) it.next();
if (fileItem.isFormField()) {
String value = null;
if (encoding != null) {
try {
value = fileItem.getString(encoding);
} catch (UnsupportedEncodingException ex) {
if (logger.isWarnEnabled()) {
logger.warn("Could not decode multipart item '" + fileItem.getFieldName()
+ "' with encoding '" + encoding + "': using platform default");
value = fileItem.getString();
} else {
value = fileItem.getString();
String[] curParam = (String[]) multipartParameters.get(fileItem.getFieldName());
if (curParam == null) {
// simple form field
multipartParameters.put(fileItem.getFieldName(), new String[] { value });
} else {
// array of simple form fields
String[] newParam = StringUtils.addStringToArray(curParam, value);
multipartParameters.put(fileItem.getFieldName(), newParam);
} else {
// multipart file field
CommonsMultipartFile file = new CommonsMultipartFile(fileItem);
if (multipartFiles.put(fileItem.getName(), file) != null) {
throw new MultipartException("Multiple files for field name [" + file.getName()
+ "] found - not supported by MultipartResolver");
if (logger.isDebugEnabled()) {
logger.debug("Found multipart file [" + file.getName() + "] of size " + file.getSize()
+ " bytes with original filename [" + file.getOriginalFilename() + "], stored "
+ file.getStorageDescription());
return new MultipartParsingResult(multipartFiles, multipartParameters);
This is identical to the Spring class it extends except for one tiny change which is highlighted in colour (and italics for feed readers) above. This change uses the name of the uploaded file instead of the name of the form input parameter. This has two benefits – one is that now we can have multiple files coming in under the same form input parameter name and the second is that this change ensures that the file names coming in are unique. As this class, by virtue of being a subclass, is identical to the original multipart resolver it can be used in place of the original bean definition as follows.
<bean id="multipartResolver" class="resolver.MultiCommonsMultipartResolver"> <property name="maxUploadSize" value="5000000" /> <property name="maxInMemorySize" value="5000000" /> </bean>
Now the client can upload multiple files under the same form input parameter. Although I don't like such copy and paste kind of work, given how long that jira issue has remained open, I'd rather resort to such quick fixes at my end than wait for fixes at Spring's end for this particular problem.
Solution 3 – Disable Spring support and use commons fileupload directly.
The final way of achieving multiple file multipart upload is to remove the middle man, Spring, and use what's underneath the covers directly – commons fileupload (CFU). CFU provides excellent support for any number of file uploads together with other kinds of form inputs and has an excellent object oriented and intuitive api. Its usage is also very well documented so I won't bother repeating its usage here. However please note the following very important facts about this particular solution to the problem.
- In order to use CFU the multipartResolver bean absolutely must not exist anywhere in the Spring application context. If you do have the multi part resolver enabled then Spring will intercept the multipart request and process it first and then by the time the request gets to your controller, although it will be a multipart request, CFU will report zero files found. In order for CFU to work correctly it must get the raw request untouched by anything else. This is documented in its first FAQ entry although it doesn't mention Spring in particular.
- If you use CFU directly then any other controllers that are loaded in the same Spring application context must be migrated to using the CFU api too. The choice is exclusive per application context – either Spring or CFU. Depending on how many controllers you already have using Spring file upload support this may be a discouraging factor.
- CFU provides a streaming api which is much leaner and faster than any other way of iterating over and processing files. If your work is performance critical then your only option may be to use CFU directly.
Solution 4 – Using a cross cut to conditionally disable Spring support.
If you have Spring controllers already using the Spring based commons multiresolver support for single or multiple file uploads (either using the form backing object bean for single uploads or using the raw request for multi file uploads) then you have no choice but to use that for all controllers in that particular Spring application context. Commons file upload (CFU) cannot be used directly in any controller while Spring commons multi resolver is enabled as Spring intercepts and processes the request first and, as a result, by the time the request gets to your CFU based controller CFU reports zero files found. This is also stated in CFU's first FAQ entry.
However as we discussed previously you may want to use CFU directly to remove the extra layer of indirection or to achieve better performance through the use of the CFU streaming api. So how can CFU be used alongside the Spring multi resolver support without migrating all Spring based controllers to the new CFU api? The answer that I came up with is a cross cut which conditionally allows the client to decide if that particular request should be processed by Spring or be allowed to pass through to CFU directly. The code follows.
Multipart resolver disabling aspect
The aspect below proxies the real
multipartResolver bean, intercepts one of its methods and modifies its return logic very slightly based on whether a particular client request has requested that behaviour. It essentially flips the boolean return value of
CommonsMultipartResolver.isMultipart(HttpServletRequest) from true to false indicating to Spring that it should leave the request object alone which then CFU receives fresh and processes. The client indicates that a particular request should be intercepted by this aspect by posting to a url like
/spring-multi-file-upload/upload/genericMulti?_multipartResolverDisable=1. The extra GET parameter is what triggers the aspect's behaviour. The end result is that by default all multipart requests are processed by Spring but when you want to use CFU directly simply add the GET parameter and your CFU based controller will get an unprocessed and unmodified http servlet request.
package resolver; import javax.servlet.http.HttpServletRequest; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Pointcut; import org.springframework.util.Assert; import org.springframework.web.multipart.MultipartResolver; /** * Disables the spring multipart resolver for specific client requests and * therefore keeps the request intact so that controllers can process it in * whatever way they wish. This behaviour is triggered by a particular GET * parameter in the client request so it is configurable. * @author dhruba * @see MultipartResolver */ @Aspect public class MultipartResolverDisablingAspect { /** * GET parameter which, if present in request, enables advice. */ private static final String DISABLING_HTTP_REQUEST_PARAMETER_KEY = "_multipartResolverDisable"; private static boolean disablingParameterExists(final HttpServletRequest request) { Assert.notNull(request); return request.getParameter(DISABLING_HTTP_REQUEST_PARAMETER_KEY) != null; } /** * If above GET parameter exists in request then prompt the spring multipart * resolver to always tell spring that request is not of type multipart. * Spring then does not process the request any further. * @param pjp * @param request * @return * @throws Throwable */ @Around("isMultipartOperation() && args(request)") public Object disableIsMultipartOperation(final ProceedingJoinPoint pjp, final HttpServletRequest request) throws Throwable { Assert.notNull(pjp); Assert.notNull(request); if (disablingParameterExists(request)) { return Boolean.FALSE; } return pjp.proceed(); } /** * Applies to any implementation of {@linkplain MultipartResolver} */ @SuppressWarnings("unused") @Pointcut("execution(public boolean " + "org.springframework.web.multipart.MultipartResolver." + "isMultipart(javax.servlet.http.HttpServletRequest))") private void isMultipartOperation() {} }
Associated Spring configuration
<aop:aspectj-autoproxy proxy-target-class="false" /> <bean class="resolver.MultipartResolverDisablingAspect" /> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize" value="5000000" /> <property name="maxInMemorySize" value="5000000" /> </bean>
Note that the aspect applies to any implementation of the
MultipartResolver interface so it'll work even on your own subclasses of
Spring 2.5 provides excellent support for single file uploads. However the same intuitive and easy-to-use programming model does not extend to multiple file uploads in the way that you would expect. There is a bug filed but it has remained inactive. The alternative solutions are either to use the raw request or to migrate altogether to using CFU directly. To be honest I can't see any reason to use Spring as a middle man for file uploads when one can use CFU directly. The additional layer of abstraction has a performance overhead, doesn't provide any great degree of added value for conventional processing and also precludes you from using the CFU streaming api support which is by far the fastest way of iterating over and processing file uploads. However I have presented the options and now the choices are upto you.
Example project
The example project is an Eclipse project and can be downloaded. The structure of the project is as follows.
spring-multi-file-upload |-- pom.xml `-- src |-- main | |-- java | | |-- multi | | | `-- upload | | | |-- beans | | | | |-- ByteArrayFileUploadBean.java | | | | |-- MultiPartFileUploadBean.java | | | | `-- StringFileUploadBean.java | | | `-- controllers | | | |-- ByteArrayFileUploadController.java | | | |-- GenericFileUploadController.java | | | |-- MultiPartFileUploadController.java | | | |-- ParallelGenericFileUploadController.java | | | `-- StringFileUploadController.java | | |-- resolver | | | |-- MultiCommonsMultipartResolver.java | | | `-- MultipartResolverDisablingAspect.java | | `-- single | | `-- upload | | |-- beans | | | |-- ByteArrayFileUploadBean.java | | | |-- MultiPartFileUploadBean.java | | | `-- StringFileUploadBean.java | | `-- controllers | | |-- ByteArrayFileUploadController.java | | |-- MultiPartFileUploadController.java | | `-- StringFileUploadController.java | |-- resources | | `-- logback.xml | `-- webapp | |-- META-INF | | `-- MANIFEST.MF | |-- WEB-INF | | |-- deploy-context.xml | | |-- jsp | | | |-- form.jsp | | | `-- success.jsp | | |-- spring-multi-file-upload-servlet.xml | | `-- web.xml | |-- index.jsp | `-- tests | |-- aspect.html | |-- generic.html | |-- multiple.html | `-- single.html `-- test |-- java | `-- app | `-- upload | `-- TestContext.java `-- resources
Build a war using maven as follows:
mvn clean package and then deploy to tomcat or similar. The test forms can be run from the following urls.
Then depending on which form you have posted they go to the respective controller which receives that particular url.
Related Spring Jira Issues
Here are the Spring jira issues that are related to this article.
- Support MultipartFile-array property
- Declaring a multipartResolver bean limits file uploading capabilities
- Provides a MultipartResolver that make use of Common FileUpload 1.2
The reader is encouraged to watch and vote for these issues so that they get resolved – particularly the first two issues are most important. The last one is the same as the one before for all intents and purposes.
Update [2009-01-04]: Added
ParallelGenericFileUploadController just for fun which uploads multiple files in parallel.


text:
Udemy – You CAN Stop Worrying: Train Your Brain to Kick the Habit [100% off]
Posted on 19/10/2016 by admin | 0 comments
Course Description
Are you a worrier?
Do you find that you worry so much that its difficult to sleep at night? You know that worrying is unproductive but you can't stop the constant cycle of thought going round in your head.
If so you're not alone.
According to a recent study over 86% of adults feel that they are 'worriers', with the average adult spending nearly 2 hours a day worrying! This adds up to nearly a month a year.
If you would like to learn how to effectively manage and control your worrying, then this is the course for you.
In this course you will discover simple, easy to follow, tried and tested techniques for learning how to effectively manage and control your worry.
This course is fully covered by my 100% no questions asked 30-day money back guarantee.
Topics covered include:
- How common is worry?
- What exactly is worry?
- Five questions that help you decide if you're worrying too much
- How to postpone worry (why thought stopping doesn't work!)
- The Worry Tree (and when to use one)
- Overcoming uncertainty using APPLE
- The Ripple Effect (what it is and how to avoid it)
and much more…
Udemy Coupon Code : https://www.udemy.com/how-to-stop-worrying-and-live-a-calmer-life/?couponCode=INTROPROMO1
Share with your friends :


text:
The Darkness Preview (X360)
If you like a dark, story driven game with an abundance of blood and gore, is this ever one for you. Based on the popular comic book series by Top Cow, The Darkness follows the story of mafia hitman Jackie Estacado who was adopted by the don of a crime family. On his 21st birthday, Jackie finds himself possessed by The Darkness, a demonic entity that gives him supernatural powers. Read More.


text:
As you know the site welcomes articles and thought pieces from its readers and commentators.
Mike Buchanan, writer of The Glass Ceiling Delusion, David and Goliatha and the forthcoming Feminism: Crones' Disease has penned an exclusive article on feminism.
I hope everyone enjoys the article and it is great to have a writer like Mike penning a thought piece like this for the site.
Download Gender Feminism - an assault on women
Posted by Skimmington


text:
Cassini-Huygens, 2004
Martin Tomasko
We proposed for DISR, the Descent Imager Spectral Radiometer, for this Titan entry probe mission. The deal was, Cassini and Huygens were a joint U.S.-European mission. The Americans were going to be primarily responsible for the orbiter—they had two-thirds of the experiments on the orbiter, and two-thirds of the vote on how the orbiter payload was going to be distributed. The probe was going to be mostly the responsibility of the European Space Agency. They got two-thirds of the instruments and two-thirds of the votes deciding the payload.
I had an instrument on the probe, so I knew that was going to have a heavily European flavor, and I thought it was important for us to get some European co-investigators and get a strong European participation. Peter Smith, who was here working with me on things in those days, and I went to Europe. I remember tramping around France and Germany visiting various places and trying to draw out interest in being a collaborator on this experiment that we had in mind for this European entry probe.
Peter Smith
This was fun because we were Americans on a European mission. But we were worried that without European partners, our proposal wouldn't be attractive to the European judges. We didn't know any Europeans. Back in the eighties, there weren't very many Europeans in planetary science; they were mostly in astronomy. That's totally changed today.
We went to the Paris Observatory one fine day, up on a hill—it looks like an old palace. There's a big dome that astronomers used back in the seventeenth century. It's really an interesting place. There's a small building back in the trees and a big lake next to it with fish jumping. Totally different from American science; this was dripping with tradition and charm.
We met Michel Combes and presented our proposal to him. We said, "You guys can help us build the instrument, and in exchange you can participate in the full science of the mission. We think you should build an infrared spectrometer."
As soon as we made that proposal, they all broke into rapid French. Marty and I couldn't understand a word. It was too fast. Everybody talking at once—this is the French way. It turned out, for the lab to take on our project, everybody had to agree. If one person didn't agree, they wouldn't do it. So several scientists over there had to choose our project over the other possibilities they had. That's why they're taking this quite seriously.
Eventually they said, yeah, they thought this could be a good project, and they'd probably be interested in helping us write a proposal. So we said, "Great. We'll count you in."
Then we flew up to Germany. We drove way away from all the big cities. At that time Germany was East and West. Within about two miles of the Wall, in the middle of a cow pasture, there was a brand-new, modern building. That was the Max Planck Institute for Aeronomy, out in the middle of nowhere.
We met this fellow that we'd heard studied comets, which at least was in the solar system. His name was Wing Ip. His response to our project: "I have no interest whatsoever."
Oh, my gosh. What do we do now? "Is there anybody else here?"
"Well, there's one guy who sent a camera to Halley's comet in '86. Try him. His name is Uwe Keller."
So we went out to see Uwe Keller. Now, Uwe Keller, unlike Michel Combes, is bigger than I am, bald-headed, and very aggressive. He says, "Yes, we'll do it. We'll provide the detectors."
"Great." We have no knowledge of Uwe Keller, but off we went.
Now we had two Europeans. We wrote the proposal, and then I became the project manager after we won. We had Lockheed-Martin building it. I'd never managed a hundred thousand dollar project much less a twenty million dollar contract, with Marty's help fortunately. We had a lot of learning to do as we built this instrument.
Lyn Doose
The big break came when we won the Descent Imager Spectral Radiometer experiment, which was the camera on board the Huygens probe. It was a spectrometer and a specialized camera to look at the Sun to determine the aerosol properties, and covered visible, infrared, violet and some of the ultraviolet.
Cassini was launched in '97. I was primarily responsible for the software. It was really interesting software; it was adaptive in nature, so that if something happened in Titan's atmosphere, the instrument would respond to it. At the same time, I wasn't just an instrumentalist. We published papers along the way; we became experts in radiative transfer. We became one of the first groups that could really interpret photometric observations, and spectrometric observations of planets with thick atmospheres. We published a number of papers on Jupiter and Saturn based on the Pioneer results, and also on Venus, with the Pioneer-Venus results.
So we were well situated to analyze the Cassini-Huygens data when it came back, and it finally did in 2005. Things didn't quite go the way we expected. The probe spun backwards from the way it was supposed to go. The probe oscillated a little more than we expected it to, and it went outside the tolerances. It made the data much harder to interpret than it would've been otherwise. But we've done it and actually we're about to publish what we think is the definitive paper on Titan's aerosols.
The highest moment is when I got up on January 14, 2005, and turned on the TV and already there were pictures from our instrument, sitting on the surface of Titan, showing these pebbles and this kind of dry riverbed. Obviously we had made it. We had landed on Titan. It was just unbelievable.
Jonathan Lunine
Cassini, of course, is a very large planetary mission. The goal is to explore Saturn and its rings, its moons—especially Titan, a large moon with an atmosphere—and the magnetic environment of Saturn. The mission came about in part because NASA was planning a mission to orbit Jupiter after the Voyager missions, and it was natural since both Voyager flyby spacecraft went on past Saturn that they would plan the same thing. The twist, though, was that the Voyager flyby of Titan turned out to be so interesting, and Titan turned out to be such an interesting place, that not only was the U.S. interested but Europe became interested.
It was a very straightforward collaboration, to get the United States to build a Saturn orbiter, and the Europeans to build a Titan entry probe that would be carried to Titan by the Saturn orbiter. The entry probe would go through Titan's atmosphere and make measurements. That was Cassini-Huygens. By the mid-1980s, the general architecture of this mission was well-developed. There was a lot of fine-tuning of the political process so that both the European Space Agency and NASA would get going at the same time. That's tough, because if NASA wasn't interested, ESA couldn't be interested, and if ESA wasn't interested, NASA wasn't so interested, so they had to move together.
The metaphor that vividly I remember was a balloon launching from the U of A mall, where there were like 15 or 20 manned balloons, and they were all launched. I think they don't do that anymore at the U of A, probably for insurance purposes. You know, when a balloon takes off, it takes off. But there were these two balloons that they decided to tether together and have them take off at the same time, which was quite a stunt. Of course you can't have one balloon get too much above the other balloon, because they're tied together. So one balloon has to go up, then the other, and these go up in a stair-step fashion and it takes a lot longer to get to altitude before they finally cut the rope from each other and let each other go.
It was that kind of really delicate process that was required to get Cassini going in 1989-1990. A lot of us here at LPL applied for different roles; I applied for the role of Interdisciplinary Scientist, which was not someone who would build instruments, because I was mostly a theorist, but somebody who would have responsibility for a science area. I proposed for Titan's surface, and would use instruments to understand in a holistic way what Titan's surface was like, which was one of the big mysteries left over from Voyager.
That was my first really big proposal. It got me involved officially in Cassini. Prior to that, the mission was being studied, and ESA and NASA could involve scientists on an informal basis in the studies, but once the mission becomes official, scientists have to actually compete to get on the mission. Some well-known experts on Titan who I know didn't get on that mission, and my career would have been totally different if I had not gotten selected.
But I did get selected, and I was later selected as well for the radar team, and I was also selected as part of the team for one of the probe instruments. So three different responsibilities. It involves a lot of travel, a lot of learning about mission planning. Just by going through that bottleneck, that narrowest point in the hourglass of getting selected for Cassini, it opened up a whole lot of things.
The launch was in '97. It arrived at Saturn in 2004, in July, and that was just about 21 years after my first contact with the scientists planning Cassini. Now we've got just floods of data. The probe worked as it was supposed to. It was a real risky part of the mission but it worked. We're getting lots of radar data; I don't have time to work on all the data I'd like to. We've got several other people at LPL with major instrument responsibilities. In spite of all the attention that's given to Mars, I'd often like to think that Cassini was an important, formative experience for this laboratory.
For the probe mission, as an Interdisciplinary Scientist, I could float around as instruments got their data back from the probe mission. I made sure I was in the porta-cabin where the imaging data came back. That was probably the most emotionally intense of those experiences, because the imaging data were received on the ground. There was a two hour period while those data packets were extracted from other kinds of data that came back from the probe in the same stream and then sent to the porta-cabin where Marty Tomasko's camera team was located.
Once the data was on their computer, their software converted these to images, and the images were first displayed as a set of 300 thumbnails. That was the way Bashar Rizk, who was the guy in front of the computer consul, was displaying them—one second per image. So for about five minutes you looked at these 300 images, not in descent order. They were in random order, so you could see flashes of things on these thumbnails that looked like something you couldn't recognize and then a river channel would pop up, and then something you couldn't recognize and then a fracture would pop up. It was such a bizarre way to see these. Here were the first close-up images of Titan and the last close-up images that we'll probably see for 20 years, all in that five minute period. That was very intense; there was a lot of screaming in that room and I was one of the people screaming.